我正在將一箇舊的登錄腳本從mysql_query轉換爲pdo,並且我正在努力工作爲什麼我的pdo語句結果總是返回true?
我所要做的就是找出存在於數據庫中的電子郵件或不是!
我的代碼不管
public function doesEmailExist($userEmail)
{
$db = new PDO('mysql:host=localhost;dbname=servershop', 'user', 'pass');
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $db->prepare("SELECT COUNT(`uid`) FROM `user` WHERE `email`= ?");
$stmt->bindValue(1, $userEmail);
try
{
$stmt->execute();
$rows = $stmt->fetchColumn();
if($rows == 1)
{
return true;
}
else
{
return false;
}
}
catch (PDOException $e)
{
die($e->getMessage());
}
}
如果在表中存在的電子郵件或沒有,代碼總是返回true?
是不是有一種簡單的方法來做到這一點像SQL中的count_rows?
你試過'var_dump($ rows)'來看看你得到了什麼嗎? –
你可以發佈舊的**工作** MySQL代碼只是爲了與你的新代碼進行比較嗎? –
@Niet string'0'(length = 1) – dave