我做用戶名和密碼登錄查詢,它看起來像這樣MySQL查詢忽略大小寫
$query = "SELECT id FROM users WHERE username = ? AND password = ?";
我通過我的用戶名和密碼。問題是,說我有一個用戶名'用戶'和他們的密碼'密碼'。當我輸入'用戶'和'密碼'到領域它返回與結果仍然。所以這使得首都無用。難道我做錯了什麼?有沒有更好的方法去做這件事?資金問題對於用戶名是一樣的。它就像它正在做一個模式匹配,當我想要一個確切的字符串匹配。我也試過二進制,希望它可能改變了它,但結果相同。
$stmt = $this->db->prepare($query);
$stmt->bind_param("ss", $user, $pass);
$stmt->execute();
你如何通過你的變量來此查詢?你的桌子的類型是什麼? –
在這種情況下,密碼應該被散列(並被鹽化),而散列情況並不重要,但散列只能由正確大小寫的密碼生成。 –
「用戶」的排序規則是什麼? – hek2mgl