这只是我在stackOverflow中的第一篇文章。
您能告诉我即使我的数据库中未列出电子邮件,我的代码也有可能在变量1
中返回$rows
吗?
代码
$query = "SELECT COUNT(*) FROM konta
WHERE email='".$fieldsFromForm['email']."'";
if($result = $this->dbo->query($query)){
$rows = $result->num_rows;
if($rows>0){
return USER_NAME_ALREADY_EXISTS;
}
}
答案 0 :(得分:3)
因为您选择了一个计数,该计数将使您仅包含0
的一行没有行,或者如果该邮件中有行则为更高的行。
使用此查询:
"SELECT * FROM konta WHERE email='".$fieldsFromForm['email']."'"
(可选)您可以使用COUNT(*) as cnt
并获得关联结果并与$row->cnt
一起使用,但我更喜欢第一种选择