【发布时间】:2013-12-25 18:42:44
【问题描述】:
我尝试实现一个注册表单并尝试通过 php 和 jQuery 检查用户是否已经使用某个电子邮件注册。
这是我的一段代码:
if(endsWith($email, 'domain.tld'))
{
$result = $database->prepare("SELECT id FROM users WHERE email LIKE ?");
$result->bind_param('s', $email);
//echo $email;
$result->execute();
//echo $result->execute();
//echo $result->num_rows;
//exit();
if($result->num_rows == 0)
{
echo'ok';
}
else {
echo 'duplicate';
}
$result->close();
}
else {
echo 'validation failed';
}
我使用了注释的 echos 和 exit() 来调试我的代码。问题是数据库保存了用户 user@domain.tld 并且脚本在 echo "user@domain.tld10" 中显示了我。因此该语句执行成功,但没有返回任何行。如果我执行语句
SELECT id FROM users WHERE email LIKE "user@domain.tld"
我得到了返回的 id(在本例中为 11)。
我的问题是,我怎样才能更好地调试这个 php 脚本,最大的问题是,为什么我的 scipt 不能正常工作?
提前非常感谢您!
【问题讨论】:
-
对不起,错过了 $result->execute();刚刚添加了