2014-12-03 64 views
0

我的意思是,當從選擇結果中找到記錄時,會顯示錶格。但是當沒有記錄時,我不想顯示錶格,但可能用其他語句。如果只有找到記錄,則顯示錶格

我用這個代碼:

 <?php 
     $referenceNumber = $_POST['referenceNumber']; 
     $result = $mysqli->query ("SELECT anything what I want 

     if ($result > 0) { 
     echo '<table id="orderHistoryTable" width=100% border=1 style="text-align:center">';         
     echo '<tr>'; 
     echo '<td>ITEMS</td>'; 
     echo '<td>QUANTITY</td>'; 
     echo '<td>Infistall Location</td>'; 
     echo '<td>Infistall Address</td>'; 
     echo '</tr>'; 
      while($obj = $result->fetch_object()) { 
      echo '<tr>'; 
      echo '<td>'.$obj->items.'</td>'; 
      echo '<td>'.$obj->esquantity.'</td>'; 
      echo '<td>'.$obj->infistall_Location.'</td>'; 
      echo '<td>'.$obj->infistall_address.'</td>'; 
      echo '</tr>'; 
      } 
      echo '<tr><td colspan="3"></td> 
         <td><input type="submit" /></td> 
        </tr>'; 
     } 

     ?> 
    </table> 

我已經取代我贊同它的方式。有時它會循環表格。通過上面的代碼,它不會循環表格,但會顯示列標題的第一個<tr>...</tr>

感謝您輕鬆理解我的問題。

+0

做'的var_dump($返程)'看$ return'是什麼類型的',可能不是你的想法和等同的東西大於零 – gwillie 2014-12-03 06:35:56

回答

1

使用

if($results->num_rows === 0) 
{ 
    echo 'No results'; 
} 
else 
{ 
echo '<table id="orderHistoryTable" width=100% border=1 style="text-align:center">';         
     echo '<tr>'; 
     echo '<td>ITEMS</td>'; 
     echo '<td>QUANTITY</td>'; 
     echo '<td>Infistall Location</td>'; 
     echo '<td>Infistall Address</td>'; 
     echo '</tr>'; 
      while($obj = $result->fetch_object()) { 
      echo '<tr>'; 
      echo '<td>'.$obj->items.'</td>'; 
      echo '<td>'.$obj->esquantity.'</td>'; 
      echo '<td>'.$obj->infistall_Location.'</td>'; 
      echo '<td>'.$obj->infistall_address.'</td>'; 
      echo '</tr>'; 
      } 
      echo '<tr><td colspan="3"></td> 
         <td><input type="submit" /></td> 
        </tr>'; 
} 
0

把你的結束標記if語句中(花括號}內)。它應該與if一樣。

1

使用mysqli_num_rows檢查結果

例如,你可以使用

if(mysqli_num_rows($result) > 0){ 
    echo "<table>" 
else 
    echo "No results found"; 
+0

其實我用'選擇一些東西從onething地方類似的東西這意味着我正在尋找結果。您提供的代碼正在實現我需要的內容,但在搜索「關鍵字」之前,「else」語句中的回顯就顯示出來了。 – klaudia 2014-12-03 10:23:50

+0

我不明白問題,請您正確配合? 其實** else語句將在未找到記錄時執行。 – rut2 2014-12-03 10:32:35

1

你是正確的就在我們這樣

<?php 
    $referenceNumber = $_POST['referenceNumber']; 
    $result = $mysqli->query ("SELECT anything what I want"); 

    echo '<table id="orderHistoryTable" width=100% border=1 style="text-align:center">';         
    echo '<tr>'; 
    echo '<td>ITEMS</td>'; 
    echo '<td>QUANTITY</td>'; 
    echo '<td>Infistall Location</td>'; 
    echo '<td>Infistall Address</td>'; 
    echo '</tr>'; 
    if ($result > 0) { 

     while($obj = $result->fetch_object()) { 
     echo '<tr>'; 
     echo '<td>'.$obj->items.'</td>'; 
     echo '<td>'.$obj->esquantity.'</td>'; 
     echo '<td>'.$obj->infistall_Location.'</td>'; 
     echo '<td>'.$obj->infistall_address.'</td>'; 
     echo '</tr>'; 
     } 
     echo '<tr><td colspan="2"></td> 
        <td><input type="submit" /></td> 
       </tr>'; 
    } else { 
     echo '<tr><td colspan="4">NO Records Found</td></tr>'; 
    } 

    ?> 
</table> 
1

else語句可以使用:

$row_cnt = mysqli_num_rows($result); 

,如果條件是這樣的:

if ($row_cnt > 0) 

mysqli_num_rows

0

你可以使用這段代碼絕對有效。

<?php 
echo '<table id="orderHistoryTable" width=100% border=1 style="text-align:center">';   
$referenceNumber = $_POST['referenceNumber']; 
$result = $mysqli->query("SELECT anything what I want"); 
if($result->num_rows() > 0){      
     echo '<tr>'; 
      echo '<td>ITEMS</td>'; 
      echo '<td>QUANTITY</td>'; 
      echo '<td>Infistall Location</td>'; 
      echo '<td>Infistall Address</td>'; 
     echo '</tr>'; 
       while($obj = $result->fetch_object()) { 
       echo '<tr>'; 
       echo '<td>'.$obj->items.'</td>'; 
       echo '<td>'.$obj->esquantity.'</td>'; 
       echo '<td>'.$obj->infistall_Location.'</td>'; 
       echo '<td>'.$obj->infistall_address.'</td>'; 
       echo '</tr>'; 
      } 
     echo '<tr><td colspan="3"></td><td><input type="submit" /></td></tr>'; 
} else { 
     echo '<tr><td colspan="4">NO Records Found</td></tr>'; 
    } 
echo '</table>'; 
?> 
相關問題