主题:  偶带了一大堆问题杀回来了。

透明男孩

职务:普通成员
等级:2
金币:0.0
发贴:373
#12002/11/30 21:16:02
好久没有来这里了,好想这里呀。

还是这里好,学习气份浓厚。

我这次回来也带了好多的问题,希望这里的朋友能像以前一样热心的帮我。

我在一个留言本程序里看到这样一种管理员登陆的方法,下面是验证的原代码:

<%
dim rs,sql,uid,pwd

uid=trim(request.form("username"))
pwd=trim(request.form("password"))

set rs=server.createobject("adodb.recordset")
sql="select * from admin where username='"&uid&"'"
rs.open sql,conn,1,1
if not rs.eof then
if rs("password")=pwd then    
    rs.close
set rs=nothing
Response.Cookies("mycoolest")("username")=uid
Response.Cookies("mycoolest")("password")=pwd
response.redirect "admin-index.asp"
else
rs.close
set rs=nothing
response.redirect "login.asp"
end if
else
rs.close
set rs=nothing
response.redirect "login.asp"
end if
%>
它没有用到SESSION,并且连admin-index.asp这个文件里也没有说验证SESSION的正确性。
下面是它的退出管理的代码:
<%
    response.cookies("mycoolest")("username")=""
    response.cookies("mycoolest")("password")=""
    response.redirect("index.asp")
%>
也没有用清空SESSION这种方法。
总之就是很奇怪。
想请问大家,这两种方法哪种好?
另外就是不明白为什么要Response.Cookies("mycoolest")("username")=uid
这样写,我的书上没有这种格式。



大雪糕

职务:普通成员
等级:2
金币:10.0
发贴:579
#22002/12/1 9:08:41
书上肯定是有的,只是你没仔细看吧,要不就是那书太次
cookies存放于客户端,所以节省服务器资源,反之,session存放于服务器端,所以比cookies多占资源,但session更安全,总之两者的共同点都是存放用户信息的



今晚在线

职务:普通成员
等级:3
金币:1.0
发贴:761
#32002/12/2 0:02:59
一旦遇到关闭了COOKIES的浏览器浏览它的时候,就不能登录了——



透明男孩

职务:普通成员
等级:2
金币:0.0
发贴:373
#42002/12/2 20:56:28
呵呵呵。

多谢你们的回答。

TO:星之海洋
你说对了,我买的这本书太破了。
就二三百页包括了SQL,VBSCRIPT,ASP,ACCESS等基本内容。
讲的太粗糙了,再加上动网前些天的技术文章看不了,所以一直查不到COOKISE的格式。

TO:今晚在线
加上你的解释,我又明白了一点。
以前我调试一些留言本时,有些关了浏览器后再进入管理员时,又要管理密码,按你的解释,这种效果应该是用了验证COOKIES的方法。

再追问一些小问题
发现一个小留言本,他的INDEX。ASP内容是:
<%
Response.Redirect "gbook.asp"
%>
主要的内容还是在GBOOK。ASP里。
不知道这个设计的方法有什么好处?安全?