我是mysql和php的新手。用戶使用php和mysql數據庫登錄
一直在爲用戶創建一個帶有表的數據庫。
我已經成功地將用戶添加到數據庫,他們的密碼與md5(是的,我知道它不安全),它不會在線啓動。
我的問題是,如何根據用戶名和密碼登錄用戶。
這裏是我的代碼
我的邏輯是taht查詢運行後,它會返回true或false。
如果爲true,則顯示登錄成功,否則不成功。
然而,即使我輸入正確的用戶名和密碼,我仍然得到一個不成功的登錄信息
我檢查了MySQL數據庫,以及uesrname是有正確
想法?
if(!empty($_POST['userLog']) && !empty($_POST['passLog']))
{
//set the username and password variables from the form
$username = $_POST['userLog'];
$password = $_POST['passLog'];
//create sql string to retrieve the string from the database table "users"
$sql = "SELECT * FROM `users` WHERE userName = '$username' AND password = md5('$password')";
$result = mysql_query($sql);
if ($result == true) {
$return = "<font color=#008000><Center><b>**Successful Login**</b></Center></font>";
} else {
$return = "<font color=#ff0000><Center><b>**Failed Login**</b></Center></font>";
}
print($return);
}
看起來像md5(密碼)將成爲qry字符串的一部分。嘗試將其更改爲'$ sql =「SELECT * FROM \'users \'WHERE userName ='$ username'AND password ='」.md5('$ password')。「'」;' – SchautDollar 2013-03-02 21:38:39
快速提示使用phpass - > http://www.openwall.com/phpass/ – Espen 2013-03-02 21:43:18