ASP怎么实现显示上次登陆时间

calmjx 2006-07-27 04:48:52
如题,注意。是上次的登陆时间喔。不是现在登陆时间喔。
...全文
696 28 打赏 收藏 转发到动态 举报
写回复
用AI写文章
28 条回复
切换为时间正序
请发表友善的回复…
发表回复
calmjx 2006-07-28
  • 打赏
  • 举报
回复
有没有具体的代码啊.
  • 打赏
  • 举报
回复
wj008 说的很详细了,可以按照他的做法
lovebanyi 2006-07-28
  • 打赏
  • 举报
回复
加一个字段把登录的时间记起来.下次重新取出就可以了.
另一个方法.弄一个表把每次登录都记录起来
wubaowang_ 2006-07-28
  • 打赏
  • 举报
回复
update 数据表 set 字段名=字段值 where 条件表达式
strawren 2006-07-28
  • 打赏
  • 举报
回复
自己顶上去。希望有人能给出代码、可是就是不会写。写来写去,输出的结果都是现在的时间。不然我也不会上这来提问啦。算法我是知道的。
-------------------------------------------------
这个问题也要写出代码,而且还牵涉到算法?

wj008 2006-07-28
  • 打赏
  • 举报
回复
数据库里字段
ID |自动编号
User |文本
LastTime |时间日期
ThisTime |时间日期
wj008 2006-07-28
  • 打赏
  • 举报
回复
page1.asp

<%
if Trim(Request.Form("Submit"))<>"" then
Set conn=Server.CreateObject("ADODB.CONNECTION")
conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&server.mappath("db1.mdb")

sql="select * from X where User = '"&Trim(Request.Form("textfield"))&"'"
set rs = server.CreateObject("ADODB.Recordset")
rs.open sql,conn,1,3
if rs.recordcount <> 0 then
session("UserID") =rs("ID")
ThisTime=rs("ThisTime")
rs("LastTime")=ThisTime
rs("ThisTime")=now()
rs.update
response.Redirect "page2.asp"
end if
rs.close
set rs=nothing
conn.close
set conn=nothing
end if
%>


<form name="form1" method="post" action="">
用户名:<input name="textfield" type="text" size="12">
<input type="submit" name="Submit" value="登陆">
</form>



page2.asp


<%
if session("UserID")<>"" then

Set conn=Server.CreateObject("ADODB.CONNECTION")
conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&server.mappath("db1.mdb")

set rs = server.CreateObject("ADODB.Recordset")
sql="select * from X where ID ="&session("UserID")
rs.open sql,conn,1,1

if not rs.bof then
LastTime=rs("LastTime")
TistTime=rs("ThisTime")
end if

rs.close
set rs=nothing
conn.close
set conn=nothing
end if

%>
上次登陆时间:<%=LastTime %><br>
这次登陆时间: <%=TistTime %>
wj008 2006-07-28
  • 打赏
  • 举报
回复
键两个字段来做吧
user
ThisTime
LastTime

在登陆的时候如果通过 则做如下动作
因为这里的ThisTime已经是上次记录的当前登陆时间
所以
把ThisTime里的值交给LastTime 
ThisTime=now()
后每次显示的上次登陆时间都读LastTime
而当前登陆显示时间可以读ThisTime
同时ThisTime也为下次的LastTime做储存工作
imeyang 2006-07-28
  • 打赏
  • 举报
回复
不用两个字段,一个字段记录就行了,
如数据库中有prevtime这个字段,登录成功后就把这个字段的值加到cookies里:
response.cookies("prevtime")=rs("prevtime")
然后再把新的时间写入这个数据库字段中:
rs("prevtime")=now()
rs.update
这样就可以了!
用的时候就提取这个cookies的值:request.cookies("prevtime")就是上次登录的时间了!

calmjx 2006-07-28
  • 打赏
  • 举报
回复
结贴吧。谢谢大家。我已经做出来了。
ice2927276 2006-07-27
  • 打赏
  • 举报
回复
一个字段就可以了,打开页面时先读取显示字段的时间,再更新字段的时间为现在的时间,
MaxIE 2006-07-27
  • 打赏
  • 举报
回复
用两个字段来处理...是比较好的方法了
calmjx 2006-07-27
  • 打赏
  • 举报
回复
没有其它解决方法了吗。
calmjx 2006-07-27
  • 打赏
  • 举报
回复
是啊。只要读Cookies就可以了。把每次登陆的时间读出来。存到字段里。再重新写这次的时间进Cookies。
你也叫风语者 2006-07-27
  • 打赏
  • 举报
回复
这个表应该记录用户登陆时的所有信息。
如果小站暂时不用,以后会有用的。

cookie虽然不安全,但存个时间还是可以的。呵呵
小粘人 2006-07-27
  • 打赏
  • 举报
回复
那什么时候覆盖呢~?楼上的~
calmjx 2006-07-27
  • 打赏
  • 举报
回复
没必要吧。用一张表来记录登陆时间。等网站发展大了再来弄也可以。暂时如果没有好的办法的话。只能用Cookies了。虽然不正规。但也实用。呵呵。
你也叫风语者 2006-07-27
  • 打赏
  • 举报
回复
如果为了整个系统的安全考虑,多建立一个用户登陆表,记录所有用户登陆的情况。
从这张表中查找用户的上次登陆时间。

如果信息量太大的话,也是比较消耗资源的。

但这个表是有用的。
calmjx 2006-07-27
  • 打赏
  • 举报
回复
我不主张用SESSION.太耗资源。不过你倒提醒了我。可以用Cookies来做。这样就不必用两个字段了。

看看有没有更好的解决方法
你也叫风语者 2006-07-27
  • 打赏
  • 举报
回复
用SESSION怎么样,
用一个字段记录登陆时间[LastTime]

第二成功登陆后,取一个SESSION("LastTime") = 上次登陆时间,
取得后,在更新原来的时间。

SESSION值一值到你登陆失效。

我感觉应该可以。
加载更多回复(8)

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧