我可以在页面中登录,但我的问题是,如果我与其他帐户使用相同的密码,我将无法登录,请你们告诉我这是什么问题,如果您不介意提供帮助,我将不胜感激我是初学者,非常感谢。
$login = mysql_query("SELECT * FROM usertable WHERE (username = '" . mysql_real_escape_string($_POST['username']) . "') and (password = '" . mysql_real_escape_string($_POST['password']) . "')");
if (mysql_num_rows($login) == 1){
$_SESSION['username'] = $_POST['username'];
}
最佳答案
您在某处有一个重复的帐户。
请注意,您的 SQL 正在选择具有给定名称和密码对的所有用户,但它只会在查询结果只有一行时进行身份验证。仔细看看这个:
if (mysql_num_rows($login) == 1) {
因此,我的建议是:使用等于或大于比较 (>=
),并消除重复项。删除已经存在的重复项,并想出一种方法来避免创建重复的名称和密码对。
关于php - 具有相同密码的不同帐户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18667242/