
请大家帮我看一下这段代码,哪里有问题?谢谢!!!
主要问题是不管怎么修改,都提示没有该用户。<%admin_name=Request.Form("admin_name")admin_psd=Request.Form("a...
主要问题是不管怎么修改,都提示没有该用户。
<%
admin_name = Request.Form("admin_name")
admin_psd = Request.Form("admin_psd")
set rs = server.CreateObject("adodb.recordset")
sql = "select admin_psd from user where admin_name ='"&admin_name&"'"
rs.open sql, conn, 1,3
if rs.bof and rs.eof then
response.Write"<script language=javascript> alert('没有该用户');window.history.back();</script>"
else
if rs("admin_psd")<> "&admin_psd&" then
response.Write"<script language=javascript> alert('密码不正确');window.history.back();</script>"
else
Session("admin_name") = rs("admin_name")
Session("admin_psd") = rs("admin_psd")
rs.Close
Set rs = Nothing
Response.Redirect "main1.asp"
end if
end if
%> 展开
<%
admin_name = Request.Form("admin_name")
admin_psd = Request.Form("admin_psd")
set rs = server.CreateObject("adodb.recordset")
sql = "select admin_psd from user where admin_name ='"&admin_name&"'"
rs.open sql, conn, 1,3
if rs.bof and rs.eof then
response.Write"<script language=javascript> alert('没有该用户');window.history.back();</script>"
else
if rs("admin_psd")<> "&admin_psd&" then
response.Write"<script language=javascript> alert('密码不正确');window.history.back();</script>"
else
Session("admin_name") = rs("admin_name")
Session("admin_psd") = rs("admin_psd")
rs.Close
Set rs = Nothing
Response.Redirect "main1.asp"
end if
end if
%> 展开
2个回答
展开全部
确定你可以用 Request.Form("admin_name") 取到值, 然后把该值代入SQL语句,在你的数据库中查询一下,看是否能找到记录.如果你用等号比较,是区分大小写的,而且前后的空格也必须完全一致,SQL Server的Char类型字段会自动补空格,需要注意.
展开全部
sql = "select admin_psd from user where admin_name ='"&admin_name&"'"
这段代码是想要查找和admin_name相似的名字还是就是查找admin_name这个名字?查找相似的好像是用admin_name="%admin_name%",要查找admin_name就直接不要后面的都可以了吧,因为你这是面向对象编程,我不太懂,我知道的是面向过程的编程
这段代码是想要查找和admin_name相似的名字还是就是查找admin_name这个名字?查找相似的好像是用admin_name="%admin_name%",要查找admin_name就直接不要后面的都可以了吧,因为你这是面向对象编程,我不太懂,我知道的是面向过程的编程
追问
测试了一下,能取到值,应该是查询没有返回数据,但是也没看出哪里不对啊!请帮忙解答!谢谢!!!
追答
你这是登录时的代码,需要取到用户登录是的数据,还要与数据库的数据对比,判断是否正确,如果与数据库的信息符合,则登录成功,如果不符合就返回到登录页面。你现在是能取到值,那就是在读取数据库里面的数据时有问题。$sql="select * from user where username='".$username."' and pw='".$pw."'";这是在数据库里面查找当用户名和密码与数据库里面的用户名和密码相同,然后就进行自己设定的操作
$username=$_POST['username'];
$pw=$_POST['pw'];
//echo $username;
//echo 123;
//echo $pw;
if(($username=="") and ($pw==""))
{
echo "alert('用户名和(或)密码均必须填写!');history.back();";
exit;
}
$sql="select * from user where username='".$username."' and pw='".$pw."'";
$_result=mysql_query($sql);
$info=mysql_fetch_array($_result);
if(!$info)
{
echo "alert('用户名和(或)密错误!');history.back();";
exit;
}
else
{
echo "alert('登录成功!');location.href='admin1.php';";
}
}
我这是面向过程的编程方式,你那应该是面向对象的,不知道你看了这个能不能帮你解决问题,你先自己了解一下吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询