若是要在session失效的时候操作数据库,比如关闭浏览器记录用户离线时间,该怎么做?
本来我想用global.asa但不能用session啊,怎么办?
若是要在session失效的时候操作数据库,比如关闭浏览器记录用户离线时间,该怎么做?
本来我想用global.asa但不能用session啊,怎么办?
我写了以下代码测试
if not response.isclientconnected then conn.execute("update [user] set logouttime=#"&now&"# where username='"&session("username")&"'") end if
但并没有取得预期效果,而且not response.IsClientConnected的时候,session是不是也失效了? IsClientConnected 多久检查一次用户是否在线?
[此贴子已经被作者于2004-11-22 16:12:08编辑过]
那不就是我开始问的问题么?残念~~~
我本来就是想到用session_onEnd在global.asa
以下是我在global.asa中写的代码:
<script language="vbscript" runat="server"> sub session_onEnd set conn = server.CreateObject("adodb.connection") conn.connectionstring="provider=microsoft.jet.oledb.4.0;data source="&server.MapPath("db.mdb") conn.open conn.execute("update [user] set logouttime=#"&now&"# where username='"&session.contents("user")&"'") conn.close set conn = nothing end sub </script>
但是不行,所以我才来这里问来了,因为我想既然session都失效了,session("user")也应该失效了,怎么还好在数据库中查找username=session("user")的字段呢?
session.contents("user")是我刚刚在网上查到说在global.asa里不能用session变量,所以要用session对象的集合来调用变量,第一次用,不知道用错没有,反正还是没有效果
既然grief你说可以用session_OnEnd那你还是教教我们怎么用啊
[此贴子已经被作者于2004-11-23 16:35:31编辑过]