用asp做的用户登录系统,为什么用户名两位以上就无法连接access数据库了?
用asp做的用户登录系统,为什么用户名两位以上就无法连接access数据库了?就显示登录不成功,但是数据库中有相关的数据记录啊login.asp<%setconn=ser...
用asp做的用户登录系统,为什么用户名两位以上就无法连接access数据库了?就显示登录不成功,但是数据库中有相关的数据记录啊
login.asp
<% set conn=server.createobject("ADODB.Connection")
conn.open="provider=microsoft.jet.oledb.4.0;data source=E:\zztbxt\zdtbxt.mdb"%>
<% exec="select * from nsrjbxx" set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1 %> <% session("nsrsbh")=request.Form("nsrsbh")
if session("nsrsbh")=rs("sbh") then
response.write"<script>alert('登录成功');location.href='default.asp'</script>"
else response.write"<script>alert('登录失败,按确定返回重新登陆');location.href='default.html'</script>" end if%>
default.asp
<%set conn=server.createobject("adodb.connection")
conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\zztbxt\zdtbxt.mdb"%>
<%exec="select * from nsrjbxx" set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1 %><%if session("nsrsbh")=rs("sbh") then%>
<form action="" >=rs("sbh")%>
default.html
<input name="nsrsbh" type="text" id="nsrsbh" size="18" maxlength="18" />
谢谢大家 展开
login.asp
<% set conn=server.createobject("ADODB.Connection")
conn.open="provider=microsoft.jet.oledb.4.0;data source=E:\zztbxt\zdtbxt.mdb"%>
<% exec="select * from nsrjbxx" set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1 %> <% session("nsrsbh")=request.Form("nsrsbh")
if session("nsrsbh")=rs("sbh") then
response.write"<script>alert('登录成功');location.href='default.asp'</script>"
else response.write"<script>alert('登录失败,按确定返回重新登陆');location.href='default.html'</script>" end if%>
default.asp
<%set conn=server.createobject("adodb.connection")
conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\zztbxt\zdtbxt.mdb"%>
<%exec="select * from nsrjbxx" set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1 %><%if session("nsrsbh")=rs("sbh") then%>
<form action="" >=rs("sbh")%>
default.html
<input name="nsrsbh" type="text" id="nsrsbh" size="18" maxlength="18" />
谢谢大家 展开
展开全部
你是不是在验证用户登录信息是否正确的时候,设置了登录用户账号的长度?
这个设置跟你数据库中的文本长度不一样,是页面你手动设置的
<% exec="select * from nsrjbxx" set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1 %> <% session("nsrsbh")=request.Form("nsrsbh")
if session("nsrsbh")=rs("sbh") then
这段代码中,if 里,你是要判断密码是否正确吧?表格中只有1个用户吗?
如果只有1个用户还可以,可是如果有2个的话就会出错了
建议,exec 中,加个where ,限制查询语句中用户名锁定为你当前输入的用户名。
这个设置跟你数据库中的文本长度不一样,是页面你手动设置的
<% exec="select * from nsrjbxx" set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1 %> <% session("nsrsbh")=request.Form("nsrsbh")
if session("nsrsbh")=rs("sbh") then
这段代码中,if 里,你是要判断密码是否正确吧?表格中只有1个用户吗?
如果只有1个用户还可以,可是如果有2个的话就会出错了
建议,exec 中,加个where ,限制查询语句中用户名锁定为你当前输入的用户名。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
最好吧代码贴出来,大家才能帮你。最好使用response.write 显示出来,后面使用response.end中断。一个个变量值进行检查,看看问题出在哪里。 比如你要看获取的用户username则加入:
<%
set conn=server.createobject("ADODB.Connection")
conn.open="provider=microsoft.jet.oledb.4.0;data source=E:\zztbxt\zdtbxt.mdb"
exec="select * from nsrjbxx" set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
session("nsrsbh")=request.Form("nsrsbh")
response.write request.form("nsrsbh") '这里加上代码,看看输出的nsrsbh值是否为空,这个值从哪个页面传递过来的
response.end '这里设置执行断点调试
if session("nsrsbh")=rs("sbh") then
response.write"<script>alert('登录成功');location.href='default.asp'</script>"
else
response.write"<script>alert('登录失败,按确定返回重新登陆');location.href='default.html'</script>"
end if%>
<%
set conn=server.createobject("ADODB.Connection")
conn.open="provider=microsoft.jet.oledb.4.0;data source=E:\zztbxt\zdtbxt.mdb"
exec="select * from nsrjbxx" set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
session("nsrsbh")=request.Form("nsrsbh")
response.write request.form("nsrsbh") '这里加上代码,看看输出的nsrsbh值是否为空,这个值从哪个页面传递过来的
response.end '这里设置执行断点调试
if session("nsrsbh")=rs("sbh") then
response.write"<script>alert('登录成功');location.href='default.asp'</script>"
else
response.write"<script>alert('登录失败,按确定返回重新登陆');location.href='default.html'</script>"
end if%>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你看下你的数据表,这个字段的属性是什么啊?是不是冲突啦
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询