我想要获取行数以检查数据库中是否已经存在相同的电子邮件。我尝试了几种方法,但都没有成功。当我直接在数据库中运行查询时,它给我返回了行数,但是通过PDO的execute方法却返回了0。
我尝试使用fetchAll方法手动计数,甚至使用了rowCount方法,但都没有起作用。
$sql = 'SELECT count(*) FROM inbox WHERE uid = ? AND from_email = ?'; $result = $link->prepare($sql); $result->execute([$email_number,$email_f]); $number_of_rows = $result->fetchColumn();
问题出在$email_f这个变量上,它包含HTML代码。
SELECT count(*) FROM inbox WHERE uid = "6961" AND from_email = "abc Offers <abc@abcs.com>"
这是我从$sql中打印出来的查询语句,当我在phpMyAdmin中直接执行它时,它可以正常工作,返回3行计数,但是通过execute方法却返回了0。
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号