国学经典诵读的好处:连接无法用于执行此操作了!!ASP

来源:百度文库 编辑:高校问答 时间:2024/05/05 19:05:46
<%
dim UserName,UserPassword,UserRpassword,UserContact,sql1,sql2

if request.Form("SubRok")="确定" then

UserName=replace(request.Form("TFUsername"),"'","'")
UserPassword=replace(request.Form("TFPassword"),"'","'")
UserPassword=replace(PasswordJiami(UserPassword),"'","'")
UserContact=replace(request.Form("TFContact"),"'","'")
sql2="select username from [user] where username='"&UserName&"'"
set rs2= Server.CreateObject("adodb.recordset")
rs2.open sql2,conn,3
if not rs2.eof or not rs2.bof then
%>
<script language="javascript">
window.alert ('用户名已经存在!请返回重新注册!');
</script>
<a href="register.asp">请返回重新注册</a>
<%
rs2.close
else
sql1="insert into user(username,userpassword,contact)"
sql1=sql1 & "values('"&UserName&"','"&UserPassword&"','"&UserContact&"')"
set cmd= Server.CreateObject("adodb.command")
cmd.Commandtext=sql1
cmd.Execute
response.Cookies("User")("aspbbsUserName")=UserName
%>
注册成功 <a href=main.asp>返回</a>
<%
end if

end if
%>

运行到cmd.Commandtext=sql1
cmd.Execute
就会报错:连接无法用于执行此操作。在此上下文中它可能已被关闭或无效。

高手帮我看看怎么改啊?谢谢!!

sql1="insert into user(username,userpassword,contact)"
sql1=sql1 & "values('"&UserName&"','"&UserPassword&"','"&UserContact&"')"
…………
set cmd= Server.CreateObject("adodb.command")
cmd.Commandtext=sql1
cmd.Execute

上面的代码要用command对象,但是command对象并没有定义数据源啊,它当然无法操作了。
加一句试试。

set cmd= Server.CreateObject("adodb.command")
cmd.activeconnection="…………"'具体内容我也不清楚,看conn的引用的是什么数据源估计这个也是。
cmd.Commandtext=sql1
cmd.Execute

cmd.Conmmandtext=sql1
cmd.open() conn
这样试试

直接用conn.execute(sql1)不结了,执行更快