我正在将一个旧的登录脚本从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