2016-11-05 60 views
0

我不是當管理表是空的這個查詢,有人可能會說,以顯示找到的消息沒有我要去的地方錯了嗎?顯示消息「沒有找到」查詢MySQL的PDO

<?php 
     $sqlRead = "SELECT * FROM dados ORDER BY name ASC"; 

     try{ 
      $read = $db->prepare($sqlRead); 
      $read->execute(); 
     } catch (PDOException $e) { 
       echo $e->getMessage(); 
     } 
     while ($rs = $read->fetch(PDO::FETCH_OBJ)){ 

?> 

<h1><?php echo $rs->name; ?></h1> 
+0

你能否詳細說明你的問題一點點?你沒有收到「空」的信息,或者即使有記錄存在也沒有被顯示?如果第一個,您的代碼沒有顯示在空表上回顯消息的任何跡象。我建議閱讀以下內容:[我如何問一個好問題](http://stackoverflow.com/help/how-to-ask) – CmdrSharp

+0

你之前試過'num_rows'嗎? –

+0

對不起,這是我第一次在網站上。當$ sqlRead不返回任何內容時,也就是說,當mysql中的表爲空時,我不知道如何放置「if」來顯示「Nothing found」消息。如果任何人都可以通過實施我發佈的代碼提供幫助我試過num_rows,但沒有奏效。 – joaovictormacedo

回答

0

我找到了解決辦法

<?php 
    $sqlRead = "SELECT * FROM dados ORDER BY name ASC"; 

    try{ 
     $read = $db->prepare($sqlRead); 
     $read->execute(); 
     $result = $read->rowCount(); 
    } catch (PDOException $e) { 
      echo $e->getMessage(); 
    } 

    if($result == 0){ 
     echo "NOTHING FOUND!"; 
    } else { 
     while ($rs = $read->fetch(PDO::FETCH_OBJ)){ 
?> 

<?php echo $rs->name; ?> 

<?php } } ?> 

通過上面的代碼,如果沒有在 數據庫中找到可以顯示消息