使用mysql_fetch_row()函數逐行取得結果集中的每筆記錄(PHP操作MySQL資料庫的方法六)
前面我們介紹了兩種取得結果集中的數據,那麼我們今天就來跟大家介紹第三種取得結果集的mysql_fetch_row()函數,該函數與前面說的函數用法類似!
在先前的文章《使用mysql_fetch_array()函數取得陣列結果集中的資訊(PHP操作MySQL資料庫的方法四)》和《使用mysql_fetch_object()函數取得結果集中一行作為物件(PHP操作MySQL資料庫的方法五)》中介紹了mysql_fetch_array()函數和mysql_fetch_object()函數,本章我們詳細介紹mysql_fetch_row()函數!
還函數的語法格式如下:
array mysql_fetch_row(resource result)
mysql_fetch_row()函數從指定的結果標識關聯的結果集中獲取一行資料並作為數組返回,將此行賦予數組變數$row,每個結果的列儲存在一個陣列元素中,下面從0 開始,就是以$row[0]的形式存取第一個陣列元素(只有一個元素時也是如此),一次呼叫mysql_fetch_row()函數將會傳回結果集中的下一行,知道沒有更多行那麼就會回傳false。
注意:本函數傳回的欄位名稱區分字母大小寫!
下面的實例個前面的文章中的功能是相同的,不同的是下面的實例透過 mysql_fetch_row()函數逐行取得結果集中的每筆記錄。然後使用echo 語句從陣列結果集中輸出各欄位所對應的圖書資訊。
具體開發步驟如下:
1.建立項目,新增表單,連接資料庫,以及選擇資料庫的實作過程跟前面文章的一樣,這裡就不在重複了,不清楚的小夥伴可以去看下,本文有連接到上一篇。
2.和先前的文章中不同的是,本實例使用mysql_fetch_row()函數逐行取得結果集中的記錄,核心程式碼如下:
<?php $sql = mysql_query("select * from tb_book"); $row = mysql_fetch_row($sql); if ($_POST["Submit"]=="查询"){ $txt_book = $_POST["txt_book"]; $sql = mysql_query("select * from tb_book where bookname like '%".trim($txt_book)."%'"); //执行模糊查询 $row = mysql_fetch_row($sql); //逐行获取查询结果,返回值为数组 } ?>
3.使用if條件語句對結果集變數$row進行判斷,如果該值為假,那麼輸出您檢索到的資訊不存在,否則使用do...while循環語句以數組的方式輸出結果集中的信息,核心代碼如下:
<?php if ($row == false){ echo "<p align='center' style='color: #FF0000;font-size: 12px'>对不起,你要查询的信息不存在</p>"; } ?> <?php do { ?> <table> <tr align="left" bgcolor="#FFFFFF"> <td height="20" align="center"><?php echo $row[0] ?></td> <td height="20" align="center"><?php echo $row[1] ?></td> <td height="20" align="center"><?php echo $row[2] ?></td> <td height="20" align="center"><?php echo $row[3] ?></td> <td height="20" align="center"><?php echo $row[4] ?></td> <td height="20" align="center"><?php echo $row[5] ?></td> </tr> </table> <?php }while ($row = mysql_fetch_row($sql)); ?>
上面的實例運行的結果與前面兩篇文章的運行的結果是一樣的,這裡就粘貼圖了,小伙伴們可以自己在本地試一試!
下一篇文章我們將介紹取得查詢結果集中的記錄,具體請閱讀《使用mysql_num_rows()函數逐行取得結果集中的記錄數(PHP操作MySQL資料庫的方法七)》
以上是使用mysql_fetch_row()函數逐行取得結果集中的每筆記錄(PHP操作MySQL資料庫的方法六)的詳細內容。更多資訊請關注PHP中文網其他相關文章!