【发布时间】:2012-03-13 05:33:06
【问题描述】:
我的班级中有这个函数或方法,但是当我向其中插入电子邮件时它不返回行数。我已经测试了mysql连接等,它们都在工作。另请注意,我通过该方法传递的电子邮件已存在于数据库中。我的计划是获取行数,如果它大于零,则表示我们已经在数据库中有这封电子邮件。
public function userExist($email) {
$query = "SELECT email FROM " . USER_TABLE . " WHERE email = ?";
$stmt = $this->_db->prepare($query);
$stmt->bind_param("s", $email);
if ($stmt->execute()) {
$stmt->store_result();
return $stmt->num_rows;
}
return false;
}
【问题讨论】:
-
你不需要
select email,只要它总是等于$email。更好地执行SELECT COUNT(*) -
一切似乎都很好。
display_errors是否设置为 true,或者是否记录了错误? -
我不熟悉 OOP 调试方式,这是我的主要问题,我对 OOP 方式编程感到沮丧。我使用 eclipse 进行编码并使编码变得更加容易,但我需要学习如何调试。你知道什么好的调试工具或者php源码吗?
标签: php mysqli prepared-statement php-5.3 mysql-num-rows