在我的网站的部分评论离开系统中,有一个奇怪的空白条目始终保持在最新的真实条目之上。我直接查看了数据库,没有空白条目。然而,在我的所有评论的顶部,始终有一个空框,其格式与其他评论相同。这是从哪里来的,我该如何摆脱它?这是php:
$query = "SELECT * FROM catharsis";
$result = mysql_query($query);
$num = mysql_numrows($result);
mysql_close();
echo "<h4><center>Let it out.</center></h4>";
echo '<ul class="comments">';
for ($i = 0; $i < $num; $i++) {
$name = mysql_result($result,$num - $i,"message");
echo "<li>$name</li>";
echo '<br>';
}
echo '</ul>';
相关的css:
ul.comments {
list-style-type: none;
position: relative;
right: 2.5em;
}
ul.comments li {
list-style-type: none;
background-color: c0dbff;
border-style: solid;
border-width: 1px;
border-color: black;
padding: .4em;
}
答案 0 :(得分:3)
$query = 'SELECT message FROM catharsis ORDER BY id DESC';
$result = mysql_query($query);
mysql_close();
echo '<h4><center>Let it out.</center></h4>';
echo '<ul class="comments">';
while($t = mysql_fetch_array($result)){
echo '<li>'.$t[0].'</li><br>';
}
echo '</ul>';
答案 1 :(得分:2)
我相信它来自第一次执行此行:
$name = mysql_result($result,$num - $i,"message");
由于您的结果从0索引到$ num-1,因此您将没有索引为$ num-0的条目。 将该行更改为
$name = mysql_result($result,$num - $i -1,"message");
或以1开始$ i,让它运行到&lt; = $ num
答案 2 :(得分:1)
如果您回复$num
,它可以确认为零吗?
如果您还没有任何ul
条目,则不希望打印li
,因此您需要这样的内容:
if ($num > 0)
{
echo '<ul class="comments">';
for ($i = 0; $i < $num; $i++) {
$name = mysql_result($result,$num - $i,"message");
echo "<li>$name</li>";
echo '<br>';
}
echo '</ul>';
}