php – PDO查询总是返回1或true

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – PDO查询总是返回1或true脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在删除之前检查一行是否存在.我表中的行不存在但总是返回1:

$orders = $this->db->PRepare("SELECT * From orders WHERE id=? AND user=?"); 
            $check = $orders->execute(array($message,$this->;model->checkapi($data,$message)));
            echo $check;
            if($check){
            $deleteorder = $this->db->prepare("DELETE From orders WHERE id=? AND user=?"); 
            $deleteorder->execute(array($message,$message)));
                array_push($result,array('success' => true,'deleted' => $message));
                echo json_encode(array("result" => $result));
                die();
            }else{

$这 – >模型 – > checkapi($数据,$消息)
返回fakeusername和id / $message返回136

我检查了我的数据库,ID存在,但不是id和用户名.

我发送id:136和用户名:fakeuser

数据库中,该行以id:136和username:demo存在.

我不确定为什么它因为不匹配而不应该选择行时返回1.

解决方法

你应该在execute()之后使用fetch(),因为execute()在成功时返回TRUE,在失败时返回FALSE:

$orders->execute(...
$result = $orders->fetch(PDO::FETCH_ASSOC);
print_r($result);

脚本宝典总结

以上是脚本宝典为你收集整理的php – PDO查询总是返回1或true全部内容,希望文章能够帮你解决php – PDO查询总是返回1或true所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。