为什么我的程序提示'loop' 语句缺少 'do'? 怎么解决呀

vcinsect 2004-09-07 09:24:30
<%
UserName = request.form("UserName")
UserPwd = request.form("UserPwd")
If UserName = "" Then
Errmsg = "请输入用户名和密码"
Else
'=============连接数据库===============
Set Conn=Server.CreateObject("ADODB.Connection")
Conn.ConnectionString="driver={SQL Server};server=localhost;UID=sa;PWD=;Database=GjjChaxun"
'连接数据库
Conn.Open
'============从表Users中读取用户数据==============
'定义Recordset对象
Set rs=Server.CreateObject("ADODB.Recordset")
'设置Connection对象的ConnectionString
'设置rs的ActiveConnection属性,绑定到连接
Set rs.ActiveConnection = Conn
'设置游标类型
rs.CursorType = 3
'打开记录集
rs.Open "SELECT * FROM sgx WHERE Col004='" & Trim(UserName) & "'"
'=============身份验证===========================
If rs.EOF Then
Errmsg = "用户不存在"
Else
do while not rs.Eof
If trim(UserPwd) = trim(rs.Fields("Col002")) Then
Session("UserId") = rs.Fields("Col002")
Session("xm") = rs.Fields("Col004")
Response.Redirect"admin/SHOWCHAXUN.ASP"
if trim(UserPwd) <> trim(rs.Fields("Col003")) then
Session("UserId") = rs.Fields("Col003")
Session("xm") = rs.Fields("Col004")
Response.Redirect"admin/SHOWCHAXUN.ASP"
if rs.Eof then
Errmsg = "密码不正确"
end if
rs.MoveNext
loop
end if
end if
%>
...全文
408 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
person01 2004-09-07
  • 打赏
  • 举报
回复
<%
UserName = request.form("UserName")
UserPwd = request.form("UserPwd")
If UserName = "" Then
Errmsg = "请输入用户名和密码"
Else
'=============连接数据库===============
Set Conn=Server.CreateObject("ADODB.Connection")
Conn.ConnectionString="driver={SQL Server};server=localhost;UID=sa;PWD=;Database=GjjChaxun"
'连接数据库
Conn.Open
'============从表Users中读取用户数据==============
'定义Recordset对象
Set rs=Server.CreateObject("ADODB.Recordset")
'设置Connection对象的ConnectionString
'设置rs的ActiveConnection属性,绑定到连接
Set rs.ActiveConnection = Conn
'设置游标类型
rs.CursorType = 3
'打开记录集
rs.Open "SELECT * FROM sgx WHERE Col004='" & Trim(UserName) & "'"
'=============身份验证===========================
If rs.EOF Then
Errmsg = "用户不存在"
Else
do while not rs.Eof
If trim(UserPwd) = trim(rs.Fields("Col002")) Then
Session("UserId") = rs.Fields("Col002")
Session("xm") = rs.Fields("Col004")
Response.Redirect"admin/SHOWCHAXUN.ASP"
if trim(UserPwd) <> trim(rs.Fields("Col003")) then
Session("UserId") = rs.Fields("Col003")
Session("xm") = rs.Fields("Col004")
Response.Redirect"admin/SHOWCHAXUN.ASP"
if rs.Eof then
Errmsg = "密码不正确"
end if
end if
end if
rs.MoveNext
loop
end if
end if
%>
shootarrow 2004-09-07
  • 打赏
  • 举报
回复
嵌套有问题
LOOP在判断内,一旦IF为假,就屏蔽了LOOP,所以缺少LOOP
lxn_1999 2004-09-07
  • 打赏
  • 举报
回复
vc虫虫:vbscript应该是:if .... then
...........
end if
或:if .... then
...........
else
...........
end if
hlmcgyqz 2004-09-07
  • 打赏
  • 举报
回复
身份验证这段改一改啦,改成下面这样,应该就没错了。

'=============身份验证===========================
If rs.EOF Then
Errmsg = "用户不存在"
Else
do while not rs.Eof
If trim(UserPwd) = trim(rs.Fields("Col002")) Then
Session("UserId") = rs.Fields("Col002")
Session("xm") = rs.Fields("Col004")
Response.Redirect"admin/SHOWCHAXUN.ASP"
End If
If trim(UserPwd) <> trim(rs.Fields("Col003")) then
Session("UserId") = rs.Fields("Col003")
Session("xm") = rs.Fields("Col004")
Response.Redirect"admin/SHOWCHAXUN.ASP"
End If
rs.MoveNext
loop
end if
End If
ryuginka 2004-09-07
  • 打赏
  • 举报
回复
语法不过关。
写的不规范
华之瓯越 2004-09-07
  • 打赏
  • 举报
回复
你还是先去补习一下逻辑吧
连这点逻辑都搞不清楚啊
yangyanli 2004-09-07
  • 打赏
  • 举报
回复
do while
if then
if then
if then
end if
loop
就是
do {
if ()
{
if ()
{
if ()
{

}

}while()
yangyanli 2004-09-07
  • 打赏
  • 举报
回复
楼主是vc虫虫啊
if ()
{
}
else
{
if ()
{
}
else
{
}
}
asp:
if then

if then
else
end if
else

end if
if then
end if
yangyanli 2004-09-07
  • 打赏
  • 举报
回复
楼主随便找个什么vc啊c啊delphi啊,把语法这关过了再说吧!
do while
if then
if then
if then
end if
loop
不出问题才怪
vcinsect 2004-09-07
  • 打赏
  • 举报
回复
怎么改进呢???
andy0618 2004-09-07
  • 打赏
  • 举报
回复
检查一下end if嵌套的对不对,有没有少写
satans18 2004-09-07
  • 打赏
  • 举报
回复
你的嵌套有问题~~

28,409

社区成员

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

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