当获取的数组为空时,如何使用EMPTY显示错误(初学者)

时间:2014-01-14 10:49:21

标签: if-statement syntax return-value fetch is-empty

我是初学者,我认为有一个细节我没有看到阻止我的代码运作。我一直试图了解发生了几个小时的事情。我想如果我的$数据为空,则会显示错误消息。它不会发生。我无法理解这段代码的错误。

    try {$database = new PDO('mysql:host=localhost;dbname=miniblog', 'root', '');}
catch(Exception $e) {die('horror : '.$e->getmessage());}
    $answer = $database->query('SELECT id, content FROM blog WHERE id= ' . $_GET['id'] . ' ' ) ;


// Instruct display conditions

        while ($data = $answer->fetch()) 
        { 
        if (empty($data))
        {echo "ERROR there is no such article" ;}
        else
        {echo '<h3 class="news">' . ($data['content']) . '</h3>';}          
        }

1 个答案:

答案 0 :(得分:0)

使用if语句可以解决问题。 while语句在错误的情况下未能产生错误,因为while语句如果为false则甚至不会运行。

如果您使用if:

,则使用空也是不必要的
 favorite

我是初学者,我认为有一个细节我没有看到阻止我的代码运作。我一直试图了解发生了几个小时的事情。我想如果我的$数据为空,则会显示错误消息。它不会发生。我无法理解这段代码的错误。

try {$database = new PDO('mysql:host=localhost;dbname=miniblog', 'root', '');}

catch(Exception $ e){die('horror:'。$ e-&gt; getmessage());}     $ answer = $ database-&gt; query('SELECT id,content FROM blog WHERE id ='。$ _GET ['id']。'');                 //指示显示条件             if($ data = $ answer-&gt; fetch())             {echo'文章'。 $ _GET ['id']。 ''。 ($ data ['content'])。 '';}
            其他             {echo“ERROR没有这样的文章”;}             //闭环             $答案 - &GT; CloseCursor();

解决问题:D