我在sql语句中给出了错误的数据以从数据库中选择它,但在php pdo中它没有返回false

问题描述 投票:0回答:1

假设我在sql查询中输入了错误的ID以从数据库中选择全部,并且我想根据sql查询返回true还是false来执行if / else语句。但是每次我的查询返回true时,则else语句不要工作。

Here is my sudocode
            $id=$_GET['id'];

            $sql="SELECT * FROM tbl_post WHERE id='$id'";
            $post =$db->conn->prepare($sql);
            $post->execute();
            $result=$post->fetchAll();


    if($post){
           echo "data found";  
        }else{
            echo "data not found";  
            }
php mysql pdo prepared-statement
1个回答
0
投票

由于成功准备好查询,$post将包含一个PDOStatement对象,该对象在布尔上下文中将显示为true。要检查是否返回了任何数据,只需检查$result是否不是empty

empty
© www.soinside.com 2019 - 2024. All rights reserved.