[英]Multiple ANDS in a PHP mysql query?
我正在嘗試在下面的此查詢中使用多個AND,每次嘗試使用登錄功能時,都會搞亂密碼。 下面的代碼。
// this is my problem, right here
$result = mysql_query("SELECT username, password, FirstName FROM members
WHERE username='$myusername'
AND password='$mypassword'
AND FirstName = '$firstname'");
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
session_start();
$_SESSION['myusername'] = $myusername;
$_SESSION['mypassword'] = $mypassword;
$_SESSION['firstname'] = $firstname;
編輯:
SQL查詢:
表名:成員
username | password | FirstName | LastName
johndoe deers John Doe
PHPMyAdmin告訴我在那兒運行它時返回零行。
A)根本不將密碼存儲在內存中
B)散列密碼
C)如果您已經通過用戶名和密碼進行過濾,則沒有理由過濾FirstName =什么。 您是否在詢問用戶登錄時的用戶名,密碼和名字? 您從哪里獲得該變量? 用戶名不是唯一的還是什么?
如果我正確理解問題,則應檢查是否正確鍵入了用戶名,密碼和名字的大小寫(表示您在數據庫中檢查的值)。
如果要使其不區分大小寫,則應使用LIKE。
同樣如果這個評論是正確的
// If result matched $myusername and $mypassword, table row must be 1 row
這意味着您甚至都不應該首先檢查名字?
另外,如果您可以提供示例數據,這將大有幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.