واضح آرشیو وب فارسی:سایت ریسک: online counter leila_karimi 29 بهمن 1385, 11:44من قبلا هم این سوال را کردم اما به جواب نرسیدم چون برام ضروریه مجبور شدم دوباره تاپیک بزنم من می خوام تعداد افراد online در سایتم و در یک textbox نشون بدم. این کد را در global.asax نوشتم ولی هر دفعه که سایت را باز می کنم این مقدار یکی بیشتر شده یعنی در پایان session این متغیر کم نمیشه. <%@ Application Language="C#" %> <script runat="server"> void Application_Start(object sender, EventArgs e) { // Code that runs on application startup Application["intUserOnline"] = 0; } void Application_End(object sender, EventArgs e) { // Code that runs on application shutdown } void Application_Error(object sender, EventArgs e) { // Code that runs when an unhandled error occurs } void Session_Start(object sender, EventArgs e) { // Code that runs when a new session is started Application.Lock(); Application["intUserOnline"] = (int)Application["intUserOnline"] + 1; Application.UnLock(); } void Session_End(object sender, EventArgs e) { // 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["intUserOnline"] = (int)Application["intUserOnline"] - 1; Application.UnLock(); } </script> m1pfard 29 بهمن 1385, 13:23ظاهرا که درسته. ولی مطمئن هستم که این یکی تو ASP کلاسیک درسته( LANGUAGE=VBScript ): global.asa: <SCRIPT LANGUAGE=VBScript RUNAT=Server> Sub Application_OnStart Application("intUserOnline") = 0 End Sub Sub Application_OnEnd End Sub Sub Session_OnStart Application.Lock Application("intUserOnline") = Application("intUserOnline") + 1 Application.Unlock End Sub Sub Session_OnEnd Application.Lock Application("intUserOnline") = Application("intUserOnline") - 1 Application.Unlock End Sub </SCRIPT> البته اینو باید بدونی که Session_OnEnd فقط وقتی session time out تموم بشه اجرا میشه. نه با بستن مرورگر. leila_karimi 29 بهمن 1385, 14:57ممنون نکته همین بود. پس این کد آمار دقیق را نمی ده! novinpardaz 29 بهمن 1385, 18:15سلام اسكريپت رايگان هست لينك دانلود : m1pfard 30 بهمن 1385, 09:09همیشه همین طور بوده. یعنی بهترین راه حل برای تشخیص وضعیت کاربر (on یا off line ) بودنش همینه. شما یا باید زمان timeout رو کم کنید یا با یه اسکریپت هر چند وقت چک کنید که کاربر online هست یانه!!!! leila_karimi 30 بهمن 1385, 10:00این script چه کار می کنه؟لینکتون کار نمی کنه
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 294]