2013-12-08 35 views
1

随着下面的PHP代码,我如何检查是否没有行重新调整,以便我可以回显一些消息?PHP:如何检查是否没有行返回

PHP:

<?php 
    require_once 'db_conx.php'; 
    $Result = mysql_query("SELECT * FROM ads WHERE pid = '2'") 
     or die (mysql_error()); 
    while($row = mysql_fetch_array($Result)){ 
     echo '<span class="classPid" style="display:none">'.$row['pid'].'</span>'; 
    } 
?> 

感谢

+0

的可能重复[PHP和MySQL:返回的行数(http://stackoverflow.com/questions/5140298/php-and-mysql-number-of-rows-returned) – Matsemann

回答

2

像这样的事情

<?php 
    require_once 'db_conx.php'; 
    $Result = mysql_query("SELECT * FROM ads WHERE pid = '2'") 
     or die (mysql_error()); 
    $i=0; 
    while($row = mysql_fetch_array($Result)){ 
     echo "<span class='classPid' style='display:none'>".$row['pid']."</span>"; 
     $i++; 
    } 
    if($i==0){ 
     echo "No rows found"; 
    } 
?> 
+1

为什么你不是建议'mysql_num_rows'吗? – Konsole

+1

+ 1..nice trick .. –

+0

@Console,调用'function'非常昂贵。 –

3

有许多方法可以做到这一点。有一个特定的功能mysql_num_rows()它将返回返回的行数。

mysql_num_rows($Result); 

这将返回0如果没有影响或返回的行。

您还可以使用mysql_fetch_array创建一些条件。如果没有行,则mysql_fetch_array将返回FALSE

在一个单独的注意,这将是一个好主意,更新您的连接 和功能mysqlimysql没有贬值。

查看文档mysql_num_rows()

http://www.php.net/mysql_num_rows

+2

这也是一个很好的答案,但是你知道JQuery一代总是用于短期解决方案。 – Relm

相关问题