如果mysql查询为null或不存在?

时间:2012-12-20 00:46:07

标签: php mysql if-statement

如果用户评分设置为5,我有一个mysql查询获得5星,就像星级评分系统一样。另外4个相同的脚本根据1-5的等级获得1,2,3或4颗星。

如果图像在mysql表中没有结果,我想要的是回显图像。我尝试了以下但没有回应。有人可以告诉我我需要做什么吗?

我尝试添加这段代码,但我得到一个数组错误。

<?php
if (is_null($get_star_rating_set))  
{
    echo "HELLO";
}    
?>

这里的代码通常是:

<?php
$get_star_rating_set = get_star_rating();
while ($rating = mysql_fetch_array($get_star_rating_set))
    if ($rating['rating'] == '0') { echo '
      <div class="star-rate">
        <table width="40%" border="0" cellspacing="5" cellpadding="0">
          <tr>
            <td width="17%" align="left" valign="middle" scope="col"><img src="../PTB1/assets/img/icons/favorites.png" id="R1" alt="0" style="cursor:pointer" title="Not at All" width="27" height="25" /></td>
            <td width="17%" align="left" valign="middle" scope="col"><img src="../PTB1/assets/img/icons/favorites.png" id="R2" alt="1" style="cursor:pointer" title="Somewhat"   width="27" height="25" /></td>
            <td width="17%" align="left" valign="middle" scope="col"><img src="../PTB1/assets/img/icons/favorites.png" id="R3" alt="2" style="cursor:pointer" title="Average"    width="27" height="25" /></td>
            <td width="17%" align="left" valign="middle" scope="col"><img src="../PTB1/assets/img/icons/favorites.png" id="R4" alt="3" style="cursor:pointer" title="Good"       width="27" height="25" /></td>
            <td width="24%" align="left" valign="middle" scope="col"><img src="../PTB1/assets/img/icons/favorites.png" id="R5" alt="4" style="cursor:pointer" title="Very Good"  width="27" height="25" /></td>
          </tr>
        </table>
      </div>';
    }
?>

1 个答案:

答案 0 :(得分:3)

如果mysql表中没有结果,您将永远不会输入while循环。

因此,您可以添加一个条件来检查while循环周围的行数,并将图像代码放在else部分(如果没有行)。

但是,我建议您在PDO或mysqli中执行所有操作,因为mysql_函数已弃用。

伪代码中的

do query
if number of rows > 0
  do normal stuff
else
  echo your no results image