如果数据库表上没有值,如何在Php中显示

如果数据库表上没有值,如何在Php中显示,php,mysql,sql,Php,Mysql,Sql,如果数据库上有值,它会显示最大id,但当我删除所有数据以尝试是否得到“id上没有id!”的结果时,它不会显示。。请帮助我当返回零行时,您当前的代码不会出现错误消息。获取此信息的行是: <?php $stmt = $con->prepare("SELECT id FROM sample WHERE ID = (SELECT MAX(id) FROM sample)"); $stmt->execute(); $stmt->setFetchMode

如果数据库上有值,它会显示最大id,但当我删除所有数据以尝试是否得到“id上没有id!”的结果时,它不会显示。。请帮助我

当返回零行时,您当前的代码不会出现错误消息。获取此信息的行是:

<?php 
    $stmt = $con->prepare("SELECT id FROM sample WHERE  ID = (SELECT MAX(id)  FROM sample)");
    $stmt->execute();
    $stmt->setFetchMode(PDO::FETCH_ASSOC);
    $result = $stmt->fetchAll();

    foreach ($result as $row2) {
        $auto1 = $row2['id'];

            if ($auto1 ===' ') {
                echo "There is no ID!";
            } else {
                echo $auto1; 
            }

    }
?>
如果没有返回任何行,则
fetchAll()
方法将返回FALSE,因此只需检查该值并相应地显示错误消息

$result = $stmt->fetchAll();


也许你可以试试?嗯,我使用的是MAX(),因为我是根据我的自动增量创建生成的ID。。我的问题是数据库中没有数据。。它将给出一个值1。我使用max是因为如果用户创建另一个表单。。它将获得自动增量的最大值并加1。它将保存到自动生成的ID列中,如“002”。您是说希望在DB查询没有返回行时显示错误消息吗?是的。。创建的错误消息。就像echo“没有价值”一样,有人在下面给了你答案。如果问题解决了,就接受答案。如果没有,你应该在下面写一条评论,说它没有。哇,伙计,谢谢你救了我:D,谢谢你告诉我fetchall()是如何工作的:D
<?php 
    $stmt = $con->prepare("SELECT id FROM sample WHERE  ID = (SELECT MAX(id)  FROM sample)");
    $stmt->execute();
    $stmt->setFetchMode(PDO::FETCH_ASSOC);
    $result = $stmt->fetchAll();


    if($!result){
        echo "No rows found..!";
    } else { 
        foreach ($result as $row2) {
            $auto1 = $row2['id'];

            if ($auto1 ===' ') {
                echo "There is no ID!";
            } else {
                echo $auto1; 
            }
        }
    }
?>