asp程序出错,请高手指点

来源:百度知道 编辑:UC知道 时间:2024/05/29 10:21:17
<!--#include file=conn.asp-->

<%
dim flag
flag=0
inname=request("inname")
password=request("password")
n=request("name")
num=request("num")
zhuanye=request("zhuanye")
group=request("group")
c=request("class")

set rs=server.createobject("adodb.recordset")
Sql="select * from students where inname='"&inname&"'"
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,3,3
If not rs.eof and not rs.bof Then
flag=1
response.Write "<script>alert('用户名已存在!');history.go(-1)</script>"
Response.End
rs.close
set rs=nothing
conn.close
set conn=nothing
end if

if flag=0 then
sql="select * from students"
set rs=server.createobject("adodb.recordset")
rs.open sql,conn

response.Write "<script>alert('用户名已存在!');history.go(-1)</script>"
应该是这块的问题,因为你提示用户名已存在的话,然后history.go(-1),回到上一次操作的页面,这样的话,就会可能在执行一遍。
再一个这块我觉得顺序有问题:应该这样
if flag=0 then
sql="select * from students"
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,3,2
rs.addnew
rs("name")=n
rs("num")=num
rs("class")=c
rs("inname")=inname
rs("password")=password
rs("dept")=zhuanye
rs("group")=group
rs.update
response.end '不用写,因为写了后面程序无法执行
rs.close
set rs=nothing
conn.close
set conn=nothing
End If
response.Write "<script>alert('注册成功!');location.href='login.asp'</script>" ’这个应该在最后提示,然后跳转
%>

If rs.eof and not rs.bof Then
flag=1
response.Write "<script>alert('用户名已存在!&