在我的數據庫中,我有一個Varchar條目:zZzMysql - 字符串中的大寫字母
請注意大寫字母。
我讓使用輸入他們的用戶名和檢查條目。但我試圖通過完全寫入用戶名zzz使其出錯 - 請注意全部小寫。
Mysql說一切正常,並且它正在返回true,當我期待它返回false時。我究竟做錯了什麼。這裏是我的函數($ DB是一個有效的數據庫句柄):
function IsUsername($db, $Username)
{
$stmtIsUsername = $db->prepare("SELECT Username FROM members WHERE "
. "Username = :Username");
$stmtIsUsername->execute(array(':Username' => $Username));
$ret = ($stmtIsUsername && isset($stmtIsUsername) && $stmtIsUsername->rowCount() > 0) ? true : false;
$stmtIsUsername->closeCursor(); // mysql_free_result equivalent
return $ret;
}
在我的數據庫用戶名= ZZZ
我打電話以下($ DB是有效的)
$userInput = $_GET['username']; // Which is "zzz"
if(IsUsername($db, $userInput))
{
echo "All is OK";
} else
{
echo "The user is not valid";
}
的回聲令人討厭地「一切正常」。我究竟做錯了什麼?
重複:http://stackoverflow.com/questions/3936967/mysql-case-不敏感選擇 –
它不是重複的。我想zZz和zzz是不同的。你的鏈接希望兩者相同。 – Rewind