回 帖 发 新 帖 刷新版面

主题:困惑中...  30分

为什么可以访问数据库(因为"用户名已经被使用"可以执行)
而不能向里面写数据?


<!--#include file="conn.asp"-->
<!--#include file="md5.asp"-->
<% 
email = Request("email") 
zhanghao = Request("zhanghao") 
mima = Request("mima") 
mima1 = Request("mima1") 
question = Request("question") 
answer = Request("answer")  

If email = "" Or zhanghao = "" Or mima= "" Or mima1 = "" Then 
Response.Write "<html><body><center><font size=5>请将资料填写完整。</font></center></body></html>" 
Response.End 
End If 


sql="select  * from  account where zhanghao like '%" &zhanghao& "%'"
set rs=conn.execute(sql)
if  not rs.eof then
    response.write "用户名已经被使用!"
    response.end
end if


Set rs = Server.CreateObject("ADODB.Recordset") 
rs.Open "客户", dbconnection, adOpenDynamic, 3 


rs.addnew
rs("email")=trim(request("email"))
rs("zhanghao")=trim(request("zhanghao"))
rs("mima")=md5(trim(request("mima")))
rs("quesion")=trim(request("quesion"))
rs("answer")=(trim(request("answer")))
rs.update
rs.close

Response.Write "<html><body><center><font size=5>祝贺,您注册成功了!<p>" 
Response.Write "<a href='index.asp'>返回主页</a>" 
Response.Write "</font></center></body></html>"

%> 







回复列表 (共3个回复)

沙发

sql="select  * from  account where zhanghao like '%" &zhanghao& "%'"
这句有问题,假设你数据库中有123456这个账号,现在你再注册一个234这个账号就会提示你账号已经存在

板凳

rs.Open "客户", dbconnection, adOpenDynamic, 3 
这个不对,第一个参数是一句sql语句,不是表名。

3 楼

rs.Open "客户", dbconnection, adOpenDynamic, 3 
改为
rs.Open "客户",1,1,3
这种样式的多好啊,用那么长的常量名有点麻烦.

我来回复

您尚未登录,请登录后再回复。点此登录或注册