我有一个表格,其中显示了用户对产品的评论。我遇到的问题是,表并没有显示表中的所有内容。换句话说,我想要显示的数据是出现的,但不是全部。
这是我的表的代码:
<?php
$result = mysql_query("SELECT * FROM reviews WHERE serial = '$id'")
or die(mysql_error()); ;
if (mysql_num_rows($result) == 0) {
echo 'There Arent Any Reviews Yet';
} else {
echo "<table width=100% border='6'><tr><th>Comments/Thoughts</th><th>Ratings</th><th>Date</th><th>User</th>";
while($info = mysql_fetch_array($result))
{
echo "<tr>";
echo "<td>" . $info['review']. "</td>";
echo "<td>" . $info['ratings']. " Stars</td>";
echo "<td>" . $info['date']. "</td>";
echo "<td>" . $info['user']. "</td>";
}
}
echo "</tr>";
echo "</table>";
?>
当用户输入评论时,只会显示表格中的几个单词。似乎可以显示多少书面评论是有限制的,但我不知道在哪里更改这个值。
发布于 2011-11-28 06:49:39
您的while循环需要包含<tr>
标记(也称为表行标记)才能正确地形成表。您还有一个格式错误的表头。
echo "<table width=100% border='6'>
<tr>
<th>Comments/Thoughts</th>
<th>Ratings</th>
<th>Date</th>
<th>User</th>
</tr>"; // Missing TR here also!!
while($info = mysql_fetch_array($result))
{
echo "<tr>";
echo "<td>" . $info['review']. "</td>";
echo "<td>" . $info['ratings']. " Stars</td>";
echo "<td>" . $info['date']. "</td>";
echo "<td>" . $info['user']. "</td>";
echo "</tr>";
}
echo "</table>";
发布于 2011-11-28 06:49:27
你的</tr>
放错了地方:
while($info = mysql_fetch_array($result))
{
echo "<tr>";
echo "<td>" . $info['review']. "</td>";
echo "<td>" . $info['ratings']. " Stars</td>";
echo "<td>" . $info['date']. "</td>";
echo "<td>" . $info['user']. "</td>";
echo "</tr>";
}
}
echo "</table>";
?>
看起来你的代码中也没有设置$id
。试着把这段代码放在代码的顶端:
$id = mysql_real_escape_string($_GET['id']);
https://stackoverflow.com/questions/8289724
复制相似问题