تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
PAGE CLOSING\UNLOAD Event
#1
السلام عليكم اخوواني
انا حاليا اصمم موقع للدردشة ...
و عندما يدخل مستخدم للروم .. فان الموقع يطلب اسمه ليقوم بالمشاركة في الرووم .. و يصبح "اونلاين"
لكن المشكلة هي عندما يقوم بالخروج .. فيفرض ان يقوم الموقع بارسال بيانات للسيرفر تفيد بان هذا المستخدم اصبح الان غير متوفر و اصبح "اوفلاين"
فباختصار انا اريد تنفيذ امر عند الخروج من الصفحة .. و ارسال بيانات للسيرفر في نفس الوقت
تحياتي ....
الشمس اجمل في بلادي من سواها .. و الظلام
حتى الظلام هناك اجمل فهو يحتضن العـــراق :o
الرد }}}}
تم الشكر بواسطة:
#2
اخي العزيز .. يمكنك ادراج ملف Global.asax واستخدام الـ session
Everyone is a genius. It's just that some people are too stupidto realize it
الرد }}}}
تم الشكر بواسطة:
#3
كيف اخي الغالي ؟؟ اتمنى منك ان ترفق مثال بسيط جدا .. فقط يقوم بالاتصال بالسيرفر عند الخروج
شكرا لك اخي Smile
الشمس اجمل في بلادي من سواها .. و الظلام
حتى الظلام هناك اجمل فهو يحتضن العـــراق :o
الرد }}}}
تم الشكر بواسطة:
#4
up ........... Sad
الشمس اجمل في بلادي من سواها .. و الظلام
حتى الظلام هناك اجمل فهو يحتضن العـــراق :o
الرد }}}}
تم الشكر بواسطة:
#5
Global.asax
فيها عدة احداث حتما ان اطلعت عليها ستعرفها تلقائيا انظر للملف لدي
كود :
<%@ Application Language="VB" %>

<script runat="server">


    Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
        ' Code that runs on application startup
        Application("activeuser") = 0


    End Sub
    
    Sub Application_End(ByVal sender As Object, ByVal e As EventArgs)
        ' Code that runs on application shutdown
    End Sub
        
    Sub Application_Error(ByVal sender As Object, ByVal e As EventArgs)
        ' Code that runs when an unhandled error occurs
    End Sub


    Sub Session_Start(ByVal sender As Object, ByVal e As EventArgs)
        ' Code that runs when a new session is started
        Session("start") = DateTime.Now


        Application.Lock()
        Application("activeuser") = Convert.ToInt32(Application("activeuser")) + 1
        Application.UnLock()


    End Sub


    Sub Session_End(ByVal sender As Object, ByVal e As EventArgs)
        ' Code that runs when a session ends.
        ' Note: The Session_End event is raised only when the sessionstate mode
        ' is set to InProc in the Web.config file. If session mode is set to StateServer
        ' or SQLServer, the event is not raised.
        Application.Lock()
        Application("activeuser") = Convert.ToInt32(Application("activeuser")) - 1
        Application.UnLock()


    End Sub
      
</script>

وضمن حدث تحميل الصفحة الرئيسية
كود :
If Not IsPostBack Then            Dim i As Integer = Convert.ToInt32(Application("activeuser"))
            ' Response.Write("عدد الزوار الان: " & i.ToString())
            ' Application("activeuser") += 1
            visit.InnerText = "عدد الزوار الان: " & i.ToString


        End If
أستودعكم الله الذي لا تضيع ودائعه أرجو ان تجدوا بمشاركاتي ما يجعلكم تدعون لي بخير ان تحتم غيابي.
رحمك الله أبا الليث
الرد }}}}
تم الشكر بواسطة:
#6
سعود كتب :Global.asax
فيها عدة احداث حتما ان اطلعت عليها ستعرفها تلقائيا انظر للملف لدي
كود :
<%@ Application Language="VB" %>

<script runat="server">


    Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
        ' Code that runs on application startup
        Application("activeuser") = 0


    End Sub
    
    Sub Application_End(ByVal sender As Object, ByVal e As EventArgs)
        ' Code that runs on application shutdown
    End Sub
        
    Sub Application_Error(ByVal sender As Object, ByVal e As EventArgs)
        ' Code that runs when an unhandled error occurs
    End Sub


    Sub Session_Start(ByVal sender As Object, ByVal e As EventArgs)
        ' Code that runs when a new session is started
        Session("start") = DateTime.Now


        Application.Lock()
        Application("activeuser") = Convert.ToInt32(Application("activeuser")) + 1
        Application.UnLock()


    End Sub


    Sub Session_End(ByVal sender As Object, ByVal e As EventArgs)
        ' Code that runs when a session ends.
        ' Note: The Session_End event is raised only when the sessionstate mode
        ' is set to InProc in the Web.config file. If session mode is set to StateServer
        ' or SQLServer, the event is not raised.
        Application.Lock()
        Application("activeuser") = Convert.ToInt32(Application("activeuser")) - 1
        Application.UnLock()


    End Sub
      
</script>

وضمن حدث تحميل الصفحة الرئيسية
كود :
If Not IsPostBack Then            Dim i As Integer = Convert.ToInt32(Application("activeuser"))
            ' Response.Write("عدد الزوار الان: " & i.ToString())
            ' Application("activeuser") += 1
            visit.InnerText = "عدد الزوار الان: " & i.ToString


        End If

شكرا اخي العزيز سعود .. لكن المشكلة انها تنفذ فقط عند دخول المستخدم و لا يتم تنفيذ اي شيء عند خروجه Sad
اتمنى منك ان تنظر الى المشروع و ان تقوم بالتعديل عليه اذا كنت قد اخطأت بشيء
شكرا مرة اخرى
http://vb4arb.com/vb/uploaded/65_11350468488.rar
الشمس اجمل في بلادي من سواها .. و الظلام
حتى الظلام هناك اجمل فهو يحتضن العـــراق :o
الرد }}}}
تم الشكر بواسطة:
#7
بل انها تعمل لكن لابد من خطوة في ملف التكوين
كود :
<sessionState mode="InProc" timeout="10" cookieless="false"></sessionState>
تضعها ضمن system.web
أستودعكم الله الذي لا تضيع ودائعه أرجو ان تجدوا بمشاركاتي ما يجعلكم تدعون لي بخير ان تحتم غيابي.
رحمك الله أبا الليث
الرد }}}}
تم الشكر بواسطة:
#8
شكرا اخي لكن اين اضعها بالضبط ؟
الشمس اجمل في بلادي من سواها .. و الظلام
حتى الظلام هناك اجمل فهو يحتضن العـــراق :o
الرد }}}}
تم الشكر بواسطة:
#9
في اي مكان في ملف web.config ضمن system.web
لو حبيت ضعها في نهاية system.web قبل وسم الاغلاق
كود :
</system.web>
أستودعكم الله الذي لا تضيع ودائعه أرجو ان تجدوا بمشاركاتي ما يجعلكم تدعون لي بخير ان تحتم غيابي.
رحمك الله أبا الليث
الرد }}}}
تم الشكر بواسطة:
#10
الرقم 10 بالدقائق قللها لترى النتيجة بشكل اسرع
أستودعكم الله الذي لا تضيع ودائعه أرجو ان تجدوا بمشاركاتي ما يجعلكم تدعون لي بخير ان تحتم غيابي.
رحمك الله أبا الليث
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  كيف يمكن إضافة Client-Server-Side Event إلى Combobox بحيث يرجع لي قيمة الـ SelectedItem.Value ASP.NET 5 615 15-11-12, 07:14 PM
آخر رد: سعود

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم