用的不是提交按钮,是链接按钮。功能就是实现一个“申请加入俱乐部”的过程,但是点击按钮后,页面只是刷新了一下,并没有任何提示,一个msg也没出来。
地址栏url是 http://localhost/Club_Main_Apply.asp?submitok=apply&clubclass=10 这样形式的
前面主要代码:<a href="Club_Main_Apply.asp?submitok=apply&clubclass=<%=clubclass%>"><img src="images/05_42.gif" width="131" height="43" border="0"></a>
后面验证过程:
<%
set rs=nothing
IF request("submitok")="apply" THEN
'检查是否会员
If isnull(request.Cookies("love")("username")) or trim(request.Cookies("love")("username"))="" Then 'cookies为空
closeconn
call msg("非会员请求错误\n\n请您先登录...","/login.asp")
Elseif request.Cookies("love")("username")<>"" and request.Cookies("love")("password")<>"" Then '刚注册,不能登录
set rs=Server.CreateObject("ADODB.recordset")
rs.open"select username,password,flag from love_main where username='"&request.Cookies("love")("username")&"' and password='"&request.Cookies("love")("password")&"'",conn,1,1
if rs.bof and rs.eof then'非法用户
rs.close:set rs=nothing:closeconn
response.redirect "login.asp"
elseif rs("flag")<>1 then'锁定或未审核
rs.close:set rs=nothing:closeconn
call msg("已锁定或未审核用户请求错误","-1")
else
dim username
username=rs("username")
rs.close:set rs=nothing
end if
End If
'是否重复申请
set rs=server.createobject("adodb.recordset")
rs.open "select username from love_clubuser where username='"&username&"' and bigkind="&clubclass&"",conn,1,1
IF (rs.State =adStateClosed) or (rs.BOF=true and rs.EOF =true) or rs.RecordCount=0 THEN
rs.close:set rs=nothing
ifok="ok"
End If
If ifok<>"ok" Then
call msg("您已经是该俱乐部会员,不需要申请!","-1")
End if
'验证通过,进行下一步...
sql="insert into love_clubuser(username,bigkind)values('"&username&"',"&clubclass&")"
conn.execute sql '入库
closeconn
call msg("申请成功!","Club_Main.asp?clubclass="&clubclass)
END IF
Closeconn%>
问题补充:后来实验了一下,把“是否重复申请”的一段注释掉。就可以申请成功了,但是就没有了是否重复的验证,一个帐号可以成功申请多次了。这段代码我没动过,原来是好用的,后来我改过其他网页的和这页无关的东西,很不理解怎么回事..
[此贴子已经被作者于2007-8-12 6:25:18编辑过]