我有以下PHP代码:
$query = "SELECT name, COUNT(message) FROM guestbook_message WHERE name='".$req_user_info['username']."' GROUP BY name";
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_array($result))
{
echo "Messages posted: ". $row['COUNT(message)'] ."";
echo "<br />";
}它将显示用户发布的评论数量。
如果没有用户发布消息,我如何让它返回值?当前根本不显示任何内容。但我希望它显示“发布的消息: 0”
有什么想法吗?
发布于 2011-02-19 01:58:02
使用mysql_num_rows查看result中返回的结果数。
$query = "SELECT name, COUNT(message) FROM guestbook_message WHERE name='".$req_user_info['username']."' GROUP BY name";
$result = mysql_query($query) or die(mysql_error());
if(mysql_num_rows($result) > 0)
while($row = mysql_fetch_array($result))
{
echo "Messages posted: ". $row['COUNT(message)'] ."";
echo "<br />";
}
else
echo "NO Messages posted. <br />";发布于 2011-02-19 01:56:45
if ($row = mysql_fetch_array($result)) {
echo "Messages posted: ". $row['COUNT(message)'] . "";
echo "<br />";
}
else {
echo "Messages posted: 0";
echo "<br />";
}发布于 2011-02-19 02:24:46
用tertiary operator替换$row['COUNT(message)']
( $row['COUNT(message)'] > 0 ? $row['COUNT(message)'] : 0 )这基本上是一个压缩的if... else...语句。
https://stackoverflow.com/questions/5044790
复制相似问题