首頁 >後端開發 >PHP問題 >php如何判斷sql不為空

php如何判斷sql不為空

藏色散人
藏色散人原創
2020-09-03 09:10:272509瀏覽

php判斷sql不為空的方法:先透過sql查詢功能程式碼查出資訊;然後在php檔中透過「mysql_query」取得select結果集的行數;最後透過if語句判斷sql查詢結果即可。

php如何判斷sql不為空

推薦:《PHP影片教學

PHP與mysql這對黃金搭檔配合的相當默契,但偶爾也會遇到一些小需求不知道該怎麼做,例如今天要談到的:如何判斷sql語句查詢的結果集是否為空!

我們以查詢學生資訊為例,來看看究竟如何實現我們的需求。

首先,來看看我們的資料表「student」中所儲存的資料是個什麼樣子;

id  stuname  gender  age  grade  class

##1 age  grade  class

##1 age 三 grade  class

1 age 三 grade  class

1 3

2  李四男15  18    2

3  王美麗女16  17    5##美麗女16  17    54女16  17    5##我們來看看我們將要查詢年齡#都查出來;

<?php$sql = "select * from `student` where `age`=&#39;16&#39;;";$rows = mysql_query($rs);?>
<ul>
    <?php        while($rows=mysql_fetch_array($rs)){    ?>
        <li>姓名:<?php echo $rows[&#39;stuname&#39;];?></li>
        <li>性别:<?php echo $rows[&#39;gender&#39;];?></li>
        <li>年龄:<?php echo $rows[&#39;age&#39;];?></li>
        <li>年级:<?php echo $rows[&#39;grade&#39;];?></li>
        <li>班级:<?php echo $rows[&#39;class&#39;];?></li>
    <?php
        }    ?>
</ul>

以上便是查詢功能,當結果集不為空時,一切正常,當資料集為空時,會得到一個

空白的ul標籤作為使用者卻不知道

為什麼沒有得到數據,此時我們需要

給用戶一個提示訊息

,那我們就需要判斷這個結果集是否為空! ######如何判斷結果集是否為空呢,有下面兩個方法:###
<?php
//方法一 获取select结果集的行数
$rows=mysql_query("select * from `student` where `age`=&#39;16&#39;;");
if (mysql_num_rows($rows) < 1){
echo &#39;查询无数据!&#39;;
}

//方法二 返回上一次操作受影响的行数
$rows=mysql_query("select * from `student` where `age`=&#39;16&#39;;");
if(!mysql_affected_rows()){
    echo &#39;查询无数据!&#39;;
}
?>知道了方法,那么把方法套到我们的代码中看看效果吧
//方法一
<?php
$sql = "select * from `student` where `age`=&#39;16&#39;;";
$rows = mysql_query($rs);
?>
<ul>
    <?php
    if (mysql_num_rows($rs) < 1){
        echo &#39;查询无数据!&#39;;
    }else{
        while($rows=mysql_fetch_array($rs)){
    ?>
        <li>姓名:<?php echo $rows[&#39;stuname&#39;];?></li>
        <li>性别:<?php echo $rows[&#39;gender&#39;];?></li>
        <li>年龄:<?php echo $rows[&#39;age&#39;];?></li>
        <li>年级:<?php echo $rows[&#39;grade&#39;];?></li>
        <li>班级:<?php echo $rows[&#39;class&#39;];?></li>
    <?php
        }
    }
    ?>
</ul>

//方法二
<?php
$sql = "select * from `student` where `age`=&#39;16&#39;;";
$rows = mysql_query($rs);
?>
<ul>
    <?php
    if(mysql_affected_rows()){
        while ($rows=mysql_fetch_assoc($rs)){
    ?>
        <li>姓名:<?php echo $rows[&#39;stuname&#39;];?></li>
        <li>性别:<?php echo $rows[&#39;gender&#39;];?></li>
        <li>年龄:<?php echo $rows[&#39;age&#39;];?></li>
        <li>年级:<?php echo $rows[&#39;grade&#39;];?></li>
        <li>班级:<?php echo $rows[&#39;class&#39;];?></li>
    <?php
        }
    }else {
        echo "查无数据!";
    }
    ?>
</ul>
####OK,大功告成,現在查不到資料的時候就會有提示了哦! ###

以上是php如何判斷sql不為空的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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