WEB ◆ TS Library ◆ 熱衷分享 ◆ 享受教學相長 ◆ 無形的網絡擁有熱情溫度的傳遞

2-5. mysqli 擴展函式 查詢顯示留言

查詢資料建立成資料集

仍然是在 mb_index.php 檔案,輸入完留言送出之後,在表單的下方即顯示留言的內容。

nl2br( ) 函式,負責將留言內容(文字區域欄位)中按 Enter 換行的部份轉換成 br 換行標籤。

在上方PHP程式碼區加上以下程式

//查詢資料表mb所有資料===========================================
//以變數$sql_str先記錄要求資料庫做事的語法
/*
SELECT 選擇欄位  (*代表全部欄位)
FROM 資料表
ORDER BY 依據指定欄位排序  (ASC 由小到大, DESC 由大到小)
*/
$sql_str = "SELECT * 
            FROM mb 
            ORDER BY mb_time DESC";
 
//透過$conn的連結, 將上述語法帶入資料庫執行
$RS_mb = mysqli_query($conn, $sql_str);  //執行完之後得到「資料集」
 
print_r($RS_mb);  //輸出陣列資料
 
//運用mysli_num_rows()函數計算資料集的筆數
$num_RS_mb = mysqli_num_rows($RS_mb);

在表單的下方設計留言的 HTML 顯示

<!-- =========== 以下是在表單的下方顯示留言內容 ============== -->
<h2>留言筆數:</h2>
 
<p>
  留言者:[] []
  <a href="mb_modify.php">修改</a>
  <a href="mb_delete.php">刪除</a>
</p>
<p>
  內  容:
</p>
<hr>
 
目前沒有資料

設計留言表單的 CSS 顯示

<style>
  * { margin: 0; padding: 0; box-sizing: border-box; }
  body { max-width: 1200px; margin: 20px auto; color: #000; }
  form { width: 700px; margin: 20px auto;}
  input,textarea { display: block; width: 100%; margin: 5px; font-size: 16px; padding: 5px; }
  h1 { text-align: center; }
  h2 { background-color: lightgray; padding: 5px; font-size: 16px; }
  p { margin: 10px; }
  .block { background-color: #afe2f7; margin: 20px 0;}
</style>

設計顯示的欄位資料及記錄的迴圈

<!-- =========== 以下是在表單的下方顯示留言內容 ============== -->
<?php echo '<h2>留言筆數:'.$num_RS_mb.'</h2>';  ?>
 
<?php // mysqli_fetch 函數是在查詢取得的資料集 $RS_mb 中跳下一筆取出一筆資料 // 其中的 assoc 表示取得的一筆資料以欄位名稱關聯取得資料 // while ( 判斷的條件 ), 當條件成立時表示取出的有資料, 表示迴圈工作繼續 while( $row_RS_mb = mysqli_fetch_assoc($RS_mb) ){ print_r($row_RS_mb); ?>
  <p> 留言者:[<?php echo $row_RS_mb['mb_id']; ?>] <?php echo $row_RS_mb['mb_name']; ?> [<?php echo $row_RS_mb['mb_time']; ?>] </p> <p> 內 容:<?php echo nl2br( $row_RS_mb['mb_content'] ); ?> </p> <hr>  
<?php } ?>
  <?php if( $num_RS_mb == 0 ){ echo '目前沒有資料'; }   </body> </html>   <?php mysqli_free_result($RS_mb); mysqli_close($conn); ?>

有關 mysqli_fetch 函數的介紹參考

英文版 w3schools 網站中【mysqli_fetch……】的相關介紹
中文簡體 runoob 網站中【mysqli_fetch……】的相關介紹

 

 

go TOP