Check ว่ายูเซอร์ออกจากเว็บไปโดยไม่ได้กด logout หรือไม่ ทำยังไงครับ
Code (VB.NET)
Protected Sub Page_Unload(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Unload
'ถ้า user ยังไม่ logout ให้ logout ซะ
End Sub
Date :
2010-02-09 16:21:35
By :
tungman
Code (VB.NET)
Protected Sub Page_Unload(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Unload
'ถ้า user ยังไม่ logout ให้ logout ซะ
End Sub
อันนนี้มันเช็คตอน page unload ป่าวครับ แล้วถ้าuser เขาปิดBrowser ไปแล้วล่ะ
Date :
2010-02-09 16:34:14
By :
cyberwizard
ใช่แล้วครับ เป็น event ที่ใช้รันคำสั่งตอนปิด page
เดี๋ยวๆ ผมว่าจะใช้ event นี้ต้องกำหนดเงื่อนไขดีๆ ด้วยนะ เพราะเวลาเปลี่ยนเว็บมันก็ unload เหมือนกัน
เดี๋ยวมันจะ log out ออกหมด
Date :
2010-02-09 16:35:51
By :
tungman
แก้ไหม่ อย่าใช้ event page unload ไม่งั้นมัน logout ออกหมด ไม่ว่าจะ postback, change page
งั้นคงต้องเก็บ session id ลงฐานข้อมูลด้วยแล้วแหละ จะให้ตรวจสอบได้ว่าถ้า session หมดอายุ ถ้ายังไม่ logout ออก ให้
ทำการ logout ออกซะ
Date :
2010-02-09 16:57:35
By :
tungman
มาแก้อีกที มันไม่ work สักอันเลย วิธีข้างบนเวลาเรียกจาก browser อื่นมันก็เข้าได้ดิ
คนอื่นมาตอบแล้วกัน วันนี้มึนแล้ว สวัสดี
Date :
2010-02-09 17:02:57
By :
tungman
ถ้าอย่างนั้น user ไม่logout แล้วปิด Browser ไปเลย ก็ต้องรอจนกว่า session จะหมดอายุหรอครับ
ขอบคุฯท่าน tungman มากครับ แล้วพอมีวิธีอื่นอีกป่าวอ่ะครับ อยากได้หลายๆวิธีมาเปรียบเทียบอ่ะครับ
Date :
2010-02-09 17:04:08
By :
cyberwizard
หุหุ จริงๆอยากตอบแต่ทีแรกและ แต่คิดหลายๆวิธี ก็จนเหมือนคุณ tungman ก็เลยรอให้ใครสักคนเปิดก่อน อิอิ
เลยอยากจะถามว่าจะทำไปทำไมเหรอ จะเอาไว้ต่อว่า user เหรอว่าทำไมไม่ปิดให้ถูกวิธี คือถ้าไม่ติดว่าจะต้องตรวจสอบอะไรก่อนล่ะก็ ตอน user login เข้ามาใหม่ก็มี check ก่อนแล้ว popup เตือนไปแทนก็ได้ แล้วค่อยเคลียร์ status ไป หรือไม่ก็ lock ไปเลยบอกว่ามีการ login ค้างอยู่ แต่มันก็จะเพิ่มงานให้เราเองอ่ะนะ แต่ก็จะได้จับเข่าคุยกับคนที่ปิดไม่ได้อย่างที่เราต้องการ
ลองคิดๆดูครับ อันนี้เป็น web app ไม่เหมือน win app ตรงที่จะเปิดจาก browser ไหนก็ได้ มันก็นับ 1 ใหม่เหมือนกันหมด เลยยากถ้าจะ check ตอนปิด
Date :
2010-02-09 17:17:20
By :
salapao_codeman
คืออย่างนี้ครับท่าน Codeman
คือผมเก็บสถานะของuser ไว้ เวลายูเซอร์เข้ามาก็จะเก็บสถานะเป็นออนไลน์ พอlogout ก็เซ้ตสถานะว่าเป้นอ๊อฟไลน์ เพื่อให้ addmin เข้ามาดูสถานะได้ว่าใครออนไลน์อยู่บ้าง อ๊อฟไลน์อยู่บ้าง ซึ่งถ้ายูเซอร์ใด ออกไปโดยไม่กดlogout สถานะมันก็จะค้างไว้ว่าเป้นออนไลน์ครับ คือadmin จะเห็นว่าคนนั้นออนไลน์อยู่ ทั้งๆที่เขาออกไปแล้วครับ
ทีแรกผมก็หาวิธีเช็คว่าsession Timeout ไปแล้วหรือยัง หาไม่เจอครับ เลยอยากเข้ามาขอแนวทางพวกพี่ๆดูครับ
ขอบคุณพี่ๆ ทุกคนมากครับ
Date :
2010-02-10 09:31:32
By :
cyberwizard
Help me please...
Date :
2010-02-10 15:58:54
By :
cyberwizard
กำลังหาอยู่พอดีเลยยย ขอบคุณครับ
Date :
2010-02-10 19:04:32
By :
porpuay
ท่าน tungman ครับตามที่ท่านแนะนำดังนี้
แก้ไหม่ อย่าใช้ event page unload ไม่งั้นมัน logout ออกหมด ไม่ว่าจะ postback, change page
งั้นคงต้องเก็บ session id ลงฐานข้อมูลด้วยแล้วแหละ จะให้ตรวจสอบได้ว่าถ้า session หมดอายุ ถ้ายังไม่ logout ออก ให้
ทำการ logout ออกซะ
ผมไม่ทราบว่าคำสั่งในการดึงๅsession idมาเปรียบเทียบนี้ใช้คำสั่งอะไรหรอครับ
Date :
2010-02-16 16:38:46
By :
cyberwizard
โดน spam อีกแล้ววันนี้
Date :
2012-03-27 18:09:20
By :
webmaster
ผมว่า ตอน login เข้ามาก็ให้เก็บ session id ไว้ครับ
แล้วก็ใช้ Page_Unload สั่ง login ออกไป
แล้วใน Page_load หน้าอื่นก็เช็ก session id ก่อนว่ามีหรือเปล่า ถ้ามีก็ สั่ง login ใหม่
เหมือนจะวุ่นวาย ^^
Date :
2012-03-28 15:45:16
By :
sodamax
Load balance : Server 04