Session.SessionID,比较时出错,我实在是没有搞懂!!!
我想判断一个用户是否打开新窗口重新登陆,如果开新窗口重新登陆了,则原有会话失效。用户在登陆时登记了SessionID,并将用户名存在Session("UserID")中。我用了Session("LoginError")来记录出错信息。
代码如下:
Set rs = conn.Execute("select * from employees_admin where admin_name='" & Session("UserID") & "'")
If Session.SessionID <> rs("admin_sessionid") Then
Session("LoginError")="用户已重新登陆,此会话过期!" & rs("admin_sessionid") &"."& Session.SessionID
Response.Redirect "default.asp"
rs.Close
End If
按说我在第一次登陆时上面的IF语句应该不会执行,可结果却是:
用户已重新登陆,此会话过期!196435399.196435399
明明Session.SessionID 和 rs("admin_sessionid") 的值相等,为什么那个不等式会成立呢?