record的问题

chriswangyan 2004-04-09 12:59:04
<%

username=request.form("username")

password=request.Form("password")
session("username")=username
session("password")=password

set rs = Server.CreateObject("ADODB.Recordset")
'rs.ActiveConnection = "dsn=note;" 'MM_note_STRING
cnn="driver={sql server};server=**;uid=wy;pwd=**;database=**;"
if username="" and password="" then
response.Redirect("logfail.asp")
else
sql="SELECT * FROM dbo.userinf where username='"&username&"'and password='"&password&"'"
rs.open sql,cnn,1,1
end if
if not rs.eof then
response.write "sfsdf"
end if

%>
结果只显示空白页,但是数库里已经有记录了,却不显示"sfsdf"
还有在另一页,也用上面的方式打开数据库,结果提示错误即“rs.opne sql,cnn,1,1”

...全文
55 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
chenyu112 2004-04-09
  • 打赏
  • 举报
回复
同意楼上所说
也可以加上else语句判断你的rs是否已经到了结尾,若到了结尾说明你的sql语句有问题。
Newrocky 2004-04-09
  • 打赏
  • 举报
回复
一句一句的执行RESPONSE.WRITE来调试
不断的用RESPONSE.WRITE查看你的SQL语句和记录是否为EOF来查找你的问题所在!
IEEE_China 2004-04-09
  • 打赏
  • 举报
回复
不好意思,丢了一个 “%>”,这样写:

<%
username=request.form("username")
password=request.form("password")

set rs = Server.CreateObject("ADODB.Recordset")
cnn="driver={sql server};server=**;uid=wy;pwd=**;database=**"
%>
<%
if username="" and password="" then
response.Redirect "logfail.asp"
else
sql="SELECT * FROM dbo.userinf where username='"&username&"'and password='"&password&"'"
set rs=cnn.execute(sql)
end if%>

<%if rs.eof then
response.write "数据库中没有该记录"
%>
<%else%>
<%response.write "数据库中的用户名:"%><%=rs("username")%>
<%response.write "<br>"%>
<%response.write "数据库中的密码:"%><%=rs("password")%>
<%end if%>
<%rs.close
set rs=nothing%>
IEEE_China 2004-04-09
  • 打赏
  • 举报
回复
将程序这样写:
<%
username=request.form("username")
password=request.form("password")

set rs = Server.CreateObject("ADODB.Recordset")
cnn="driver={sql server};server=**;uid=wy;pwd=**;database=**"
%>
<%
if username="" and password="" then
response.Redirect "logfail.asp"
else
sql="SELECT * FROM dbo.userinf where username='"&username&"'and password='"&password&"'"
set rs=cnn.execute(sql)
end if%>
<%
if rs.eof then
response.write "数据库中没有该记录"
<%else%>
<%response.write "数据库中的用户名:"%><%=rs("username")%>
<%response.write "<br>"%>
<%response.write "数据库中的密码:"%><%=rs("password")%>
<%end if%>
<%rs.close
set rs=nothing%>

chriswangyan 2004-04-09
  • 打赏
  • 举报
回复
if not rs.eof then
response.write "sfsdf"
end if
response.write "hello"
显示hello,也不显示"sfsdf"
就是不显示if not rs.eof then
response.write "sfsdf"
end if这一部分,
为什么
baby21st 2004-04-09
  • 打赏
  • 举报
回复
try:
sql="SELECT * FROM userinfo where username='"&username&"'and [password]='"&password&"'"

userinf 是 userinfo 吧?
chriswangyan 2004-04-09
  • 打赏
  • 举报
回复
还是不行哟,
baby21st 2004-04-09
  • 打赏
  • 举报
回复
if username="" and password="" then
response.Redirect("logfail.asp")
response.end
end if

sql="SELECT * FROM userinf where username='"&username&"'and password='"&password&"'"
rs.open sql,cnn,1,1
if not rs.eof then
response.write "sfsdf"
end if
若白师妹 2004-04-09
  • 打赏
  • 举报
回复
<%

username=request.form("username")

password=request.Form("password")
session("username")=username
session("password")=password

set rs = Server.CreateObject("ADODB.Recordset")
set cnn=server.createobject("adodb.connection")
cnnstr="driver={sql server};server=**;uid=wy;pwd=**;database=**;"
cnn.open cnnstr
if username="" and password="" then
response.Redirect("logfail.asp")
else
sql="SELECT * FROM userinf where username='"&username&"'and password='"&password&"'"
rs.open sql,cnn,1,1
end if
if not rs.eof then
response.write "sfsdf"
end if

%>
AspDelphi 2004-04-09
  • 打赏
  • 举报
回复
if not rs.eof then
response.write "sfsdf"
else
response.write "OK"
end if
测试一下是否出现OK
你的SqL语句有问题

28,391

社区成员

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

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