类型:转载 责任编辑:asp 日期:2007/03/01
我在进行用户验证的时候输入的用户名和密码不能在数据库中查询,总是没有结果下面是代码,进行数据库查寻的
<!--#include file="conn.inc"-->
<p>
<%
stats="论坛管理登陆"
if request("action")="chklogin" then
call chklogin()
else
call main()
end if
sub chklogin()
username=trim(request.form("username"))
password=trim(request.form("password"))
if username="" or password="" then
response.write("<br>"+"<li>请输入您的用户名或密码。")
else
set rs=conn.execute("select username,password from user where username="&username&" and password="&password&"")
好像根本就不执行查询语句,因为我写了一个输出语句在查询语句前面可以输出,在后面就不能输出。
if rs.eof or rs.bof then
response.write("<br>用户名不存在")
end if
if not rs.eof then
session.timeout=45
response.redirect "add.asp"
end if
end if
end sub
sub main()
%>
</p>
<p> </p>
<p> </p>
<form action="login.asp?action=chklogin" method="post">
<table cellpadding=0 cellspacing=0 border=0 bgcolor="ffffff" align=center>
<tr>
<td>
<table cellpadding=6 cellspacing=1 border=0 width=100%>
<tr>
<td bgcolor="#ffffff" valign=middle colspan=2 align=center> <font color="#000000"><b>请输入您的用户名、密码登陆</b></font></td>
</tr>
<tr bgcolor="#ffcc66">
<td valign=middle><font color="#000000">请输入您的用户名</font></td>
<td valign=middle><input name=username type=text>
<font color="#000000">没有注册</font></td>
</tr>
<tr bgcolor="#ffcc66">
<td valign=middle><font color="#000000">请输入您的密码</font></td>
<td valign=middle><input name=password type=password>
<font color="#000000">忘记密码</font></td>
</tr>
<tr>
<td bgcolor="#ffffff"valign=middle colspan=2 align=center><input type=submit name="submit" value="登 陆">
<input type=reset name="cancel" value="取消"></td>
</tr></table></td></tr></table>
</form>时候总是没有结果。
推荐阅读
没用完这种方法做
你为什么不把登陆和验证这两个文件分开写?
set rs=conn.execute("select username,password from user where username="&username&" and password="&password&"")
改为:
exec="select username,password from user where username="& username &" and
password="& password &""
set rs=server.creation("adodb.recordset")
rs.open exec,conn,1,1
试试看
set rs=conn.execute("select username,password from user where username="&username&"")
然后再比较一下密码,试试看可不可以.