Php 从SELECT查询返回行时出现num_rows问题

Php 从SELECT查询返回行时出现num_rows问题,php,mysql,oop,Php,Mysql,Oop,我有个问题。我正在尝试找出数据库中是否已经存在用户的电子邮件,这是我的查询: $stmt1 = "select EmailAddress from customers where EmailAddress = ' .$emailaddress. '"; $result = $db->query($stmt1); if($result->num_rows === 0){ $Err = ""; } else { $Err = 'This user is a

我有个问题。我正在尝试找出数据库中是否已经存在用户的电子邮件,这是我的查询:

$stmt1 = "select EmailAddress from customers where EmailAddress = ' .$emailaddress. '";
 $result = $db->query($stmt1);
 if($result->num_rows === 0){

     $Err = "";

 } else {

     $Err = 'This user is already registered login instead.';

 }
我做错了什么?我似乎无法让num_rows返回我可以使用的东西。如果没有找到记录,该查询不应该返回0吗?如果有记录,该查询不应该返回行数吗?

使用:

$stmt1 = "SELECT EmailAddress FROM customers WHERE EmailAddress = '".$emailaddress."'";

查询中不需要连接。拆下。$emailaddress前后。其中emailaddress=“.$emailaddress.”-尝试使用==检查,而不是a==。为什么使用:?…..==和===之间的区别是什么?如果$result->num\u行返回的字符串不是这种情况:“0”==0检查将为false,而0==0为true。这不是很重要,但据我看来,它看起来更干净。难道我不能同时使用'if$result->num_rows>0…?的确!一定是!