主题:  照着例子编的,有错误

dreamzhan

职务:普通成员
等级:1
金币:0.0
发贴:50
注册:2003/6/30 15:38:28
#12003/9/4 22:26:44
文件一:user1.asp
代码:





New Page 1



<%
dim user
dim pwd
dim flag
dim say

response.buffer=true
response.contenttype="text/HTML"
response.charset="gb2312"

user=request.form("username")
pwd=request.form("password")
say=request.querystring("say")
%>


用户名:


密码:






<%
if say=1 then
response.write "欢迎光临"
if say>1 then
response.write "欢迎再次光临"
end if

if user="admin" and pwd="admin" then
response.expires=1
flag=1
elseif user="g" and pwd="g" then
response.expires=0
respose.clear
flag=2
elseif user="vip" and pwd="vip" then
response.write "欢迎vip光临!"
flag=3
else
flag=0
response.end
end if

response.write "test"
%>



文件二:user2.asp
代码:






New Page 1



<%
dim say
say=request.querystring("flag")
select case say
case "1"
response.redirect "user1.asp?say=1"
case "2"
response.redirect "user1.asp?say=2"
case "3"
response.redirect "user1.asp?say=3"
case "0"
response.redirect "user1.asp?say=0"
end select
%>




错误:user1.asp 第57行 response.write "test" 不明白错在那里?



缺缺

职务:管理员
等级:8
金币:41.0
发贴:9620
注册:2004/1/14 19:14:47
#22003/9/4 23:59:47
<%
if say=1 then
response.write "欢迎光临"
elseif say>1 then
response.write "欢迎再次光临"
end if


否则的话就少了一个end if



whoisspider

职务:普通成员
等级:1
金币:1.0
发贴:245
注册:2002/9/25 18:04:34
#32003/9/5 0:38:29
楼上解答正确!
事实上报错提供的信息有“缺少END”,查查就知道少了个End if,由于最后的一个End if在57行前面,所以那行报错,但错误的不是那条语句本身,而是前面的语句问题!

另外,上面还有个错误!
elseif user="g" and pwd="g" then
response.expires=0
respose.clear
————
漏写了个"n",不然输入“g”,"g"后执行就报错了!



dreamzhan

职务:普通成员
等级:1
金币:0.0
发贴:50
注册:2003/6/30 15:38:28
#42003/9/5 9:25:02
多谢楼上两位,看来还是自己不够仔细,我还想问问程序中的say这个变量起的是什么作用啊?为什么say>1就是再次光临呢?



whoisspider

职务:普通成员
等级:1
金币:1.0
发贴:245
注册:2002/9/25 18:04:34
#52003/9/5 13:18:28
say的作用就是判别访问者的类别,然后“见人说人话,见鬼说鬼话!”
say=1表明是Admin用户登录,例子想表达的是管理员登录,所以输出的是“欢迎光临”,其实输出“欢迎管理员光临”更直观!
say=2表明是普通注册用户登录,“g”应该是“guest”的缩写!既然是注册用户,他以前肯定访问过了,用“欢迎再次光临”是正确的!
say=3表明是贵宾用户“vip”,所以多输入了“欢迎vip光临!”
say=0表明输入的是非法用户,所以不处理,其实应该输出“用户名或密码错误!”



dreamzhan

职务:普通成员
等级:1
金币:0.0
发贴:50
注册:2003/6/30 15:38:28
#62003/9/6 20:37:43
还想问一下flag是怎么传递到文件二的?如果文件一和文件二不在同一文件夹下(路径正确)是否会报错?或者在同一文件夹下的其他asp文件中也存在flag变量,使用时是否会发生冲突?flag的作用域有多大?



风之翅

职务:普通成员
等级:2
金币:10.0
发贴:540
注册:2001/1/31 14:48:59

whoisspider

职务:普通成员
等级:1
金币:1.0
发贴:245
注册:2002/9/25 18:04:34
#82003/9/7 2:45:39
dreamzhan在上个帖子中说
引用:
还想问一下flag是怎么传递到文件二的?如果文件一和文件二不在同一文件夹下(路径正确)是否会报错?或者在同一文件夹下的其他asp文件中也存在flag变量,使用时是否会发生冲突?flag的作用域有多大?


看看我这个帖子里面的相关介绍内容:
www.5d.cn/bbs/NewsDetail.asp?id=917831