在数据库中读取到了用户信息,但是无法验证密码错误…………求解

发布于 2022-08-23 23:12:07 字数 2085 浏览 13 评论 0

<?php 
	include_once 'connect.inc.php';
	error_reporting(0);
	
	if($_GET['login'] == 'out'){
		setcookie("cookie","out");
		echo "<script language=\"javascript\">location.href='login.php'</script>";
	}
	if($_POST['submit']){
		$pw = md5($_POST['password']);                        
		$sql = "SELECT * FROM member WHERE `username`='".$_POST['password']."';";
		$result = mysql_query($sql, $conn);	
		$num = mysql_num_rows($result);        
		if($num)                            //判断是否有这个用户
		{
			$arr = mysql_fetch_array($result);
			if($arr['password'] == $pw)   //判断密码是否正确
			{
				setcookie("cookie","ok");
				echo "<script language=\"javascript\">alert('登陆成功!');location.href='login.php'</script>";
			}else
			{
				echo "<script language=\"javascript\">alert('密码错误!');</script>";
			}
		}else
		{
			echo "<script language=\"javascript\">alert('没有这个用户!');</script>";
		}
	}
	include_once 'head.inc.php';
	if($_COOKIE['cookie'] != "ok"){
?>

<script language="javascript">
	function CheckLogin(){
		if(login.user.value == ""){
			alert("用户名不能为空!");
			myform.user.focus();
			return false;
		}
		
		if(myform.password.value == ""){
			alert("密码不能为空!");
			myform.password.focus();
			return false;
		}
	}
</script>

<form name="login" method="post" onsubmit="return CheckLogin();">
	用户名:<input type="text" name="user"><br />
	密  &nbsp;码:<input type="password" name="password"><br />
	<input type="submit" name="submit" value="登陆">
</form>
<?php
	}else{
		echo "<a href=\"login.php?login=out\">退出</a>";
	}

?>

代码如上,当用户不正确的时候可以判断出来,当用户正确,密码不正确的时候确不能判断出来。
用户正确,密码不正确时是弹出没有这个用户对话框,逻辑关系我也看了多遍,感觉没有问题。求解,是什么原因???

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

时光清浅 2022-08-30 23:12:07

貌似今天都遇到这种问题。。。自己去看看这个写的有啥问题

$sql = "SELECT * FROM member WHERE `username`='".$_POST['password']."';";
情释 2022-08-30 23:12:07

'".$_POST['password']."'
改成 "{$_POST['password']}"试试?

难以启齿的温柔 2022-08-30 23:12:07
$sql = "SELECT * FROM member WHERE `username`='".$_POST['password']."';";

username = password ????

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文