首頁  >  文章  >  資料庫  >  使用mysql_num_rows()函數逐行取得結果集中的記錄數(PHP操作MySQL資料庫的方法七)

使用mysql_num_rows()函數逐行取得結果集中的記錄數(PHP操作MySQL資料庫的方法七)

黄舟
黄舟原創
2017-04-20 13:46:554938瀏覽

使用mysql_num_rows()函數逐行取得結果集中的記錄數(PHP操作MySQL資料庫的方法七)

前面的文章我們都是介紹取得結果集中資料的信息,那麼我們今天要跟大家介紹如何取得結果集中的記錄數,想要實現取得結果集中的記錄數,就要使用到mysql_num_rows()函數!

在正式開始本章內容的開始之前,我們先回顧一下上幾篇文章《使用mysql_fetch_array()獲取數組結果集中的信息(PHP操作MySQL數據庫的方法四)》 ,《使用mysql_fetch_object()函數取得結果集中一行作為物件(PHP操作MySQL資料庫的方法五)》和《使用mysql_fetch_row()函數逐行取得結果集中的每筆記錄(PHP操作MySQL資料庫的方法六)》這三篇文章都是介紹瞭如何獲取結果集中的信息,小伙伴們可以回顧下,下面那我們開始我們今天主要介紹的mysql_num_rows()函數!

想要取得由select 語句查詢到的結果集中行的數目,那麼就會使用到mysql_num_rows()函數,該函數的語法格式如下:

int mysql_num_rows ( resource $result )

#注意:使用mysql_unbuffered_query()函數查詢到的資料結果,就無法使用mysql_num_rows()函數來取得查詢結果集中記錄數。

下面的實例就是前幾篇文章的實例,在查詢資訊的時候,應用 mysql_num_rows()函數來取得結果集中的記錄數。

具體開發步驟:

1.該實例在前面的文章中的實例的基礎上取得查詢結果中的記錄數。

<html>
<body>
    <!--上传文件表单-->
    <form method="post" action="" name = form1>
        <table>
           <tr>
               <td width="605" height="51" bgcolor="#CC99FF">
                   <p align="center">请输入查询内容
                       <input type="text" name="txt_book" id="txt_book" size="25"> 
                       <input type="submit" name="Submit" value="查询">
                   </p>
               </td>
           </tr>
            </table>
        </form>
</body>
</html>
<?php
header("Content-Type:text/html; charset=utf-8");
$link = mysql_connect("localhost","root","root")or die("连接数据库失败".mysql_error());
mysql_select_db("php_cn",$link);
mysql_query("set names gb2312");   //设置编码,防止发生乱发
$query = "SELECT * FROM tb_book";
$sql = mysql_query($query);       //执行查询语句
//$info = mysql_fetch_array($sql);//获取查询结果,返回值为数组
if(@$_POST[&#39;Submit&#39;]){                    // 判断按钮的值是否为查询
    $txt_book = $_POST[&#39;txt_book&#39;];              //获取文本框提交的值
    $sql = mysql_query("select * from tb_book where bookname like &#39;%".trim($txt_book)."%&#39;");  //执行模糊查询
    //$info = mysql_fetch_array($sql);             // 获取查询结果
}
if($info = false){  //如果检索的信息不存在,则输出相对的提示信息
    echo "<p align=&#39;center&#39; style=&#39;color: #FF0000;font-size: 12px&#39;>对不起,你要查询的信息不存在</p>";
}
do {      //do...while 循环
?>
    <table>
        <tr align="left" bgcolor="#FFFFFF">
            <td height="20" align="center"><?php echo $info["id"] ?></td>
            <td height="20" align="center"><?php echo $info["bookname"] ?></td>
            <td height="20" align="center"><?php echo $info["data"] ?></td>
            <td height="20" align="center"><?php echo $info["price"] ?></td>
            <td height="20" align="center"><?php echo $info["maker"] ?></td>
            <td height="20" align="center"><?php echo $info["publisher"] ?></td>
        </tr>
    </table>
<?php
}while($info = mysql_fetch_array($sql));
?>

2.在上面的程式碼結尾後,使用echo語句輸出由mysql_num_rows()函數取得SQL 查詢語句結果集中的行數,程式碼如下:

<?php
$nums = mysql_num_rows($sql) ;
echo "获取总记录为:".$nums;
?>

#執行結果為:

使用mysql_num_rows()函數逐行取得結果集中的記錄數(PHP操作MySQL資料庫的方法七)

說明:如果要取得由insert,update,delete語句所影響到的資料行數,那麼就必須使用mysql_affected_rows()函數來實現!

PHP操作 MySQL 資料庫的方法到這裡就結束了,不明白的小夥伴可以在回顧一下,下個專題我們不見不散

以上是使用mysql_num_rows()函數逐行取得結果集中的記錄數(PHP操作MySQL資料庫的方法七)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn