这是我的代码:
<?php
mysql_connect("localhost","*****","********") or die("Can't connect to DB");
mysql_select_db("kroltan_main") or die("Can't select to DB");
$result = mysql_query("SELECT * FROM comments") or die("Can't fetch data");
if(mysql_num_rows($result) > 0){
$info = mysql_fetch_assoc($result);
while($row = mysql_fetch_assoc($result)){
echo "<div class='t_post'>";
echo "<div class='t_message'>" .$row["comment"]. "</div>";
echo "<div class='t_info'>" .$row["name"]. "</div>";
echo "</div>";
}
}
?>
我正在尝试生成一个内部有两个div的容器div,一个显示MySQL行的“name”值,另一个显示“comment”值。但是当我测试它时,没有内容(没有任何回应)。我的MySQL表上有内容,所以这是我的代码的问题。 http://kroltan.eliti.com.br/?/=Talk。该页面上有一些信息,但这是无关紧要的。
答案 0 :(得分:1)
删除其中包含$info = mysql_fetch_assoc($result);
的行。应该工作(要求你的查询是正确的)
答案 1 :(得分:0)
我已经整理了代码,以下内容应该可以正常工作:
<?php
mysql_connect("localhost","*****","********") or die("Can't connect to DB");
mysql_select_db("kroltan_main") or die("Can't select to DB");
$result = mysql_query("SELECT name,comment FROM comments") or die("Can't fetch data");
while($row = mysql_fetch_assoc($result)){
?>
<div class="t_post">
<div class="t_message"><?php echo $row["comment"] ?></div>
<div class="t_info"><?php echo $row["name"] ?></div>
</div>
<?php
}
?>
我所做的改变是:
$info = mysql_fetch_assoc()
已移除echo()
调用使标记更具可读性SELECT *
答案 2 :(得分:0)
// connect
$result = mysql_query('SELECT * FROM `comments`') or die("Can't fetch data"));
if(mysql_num_rows($result) > 0) {
while($row = mysql_fetch_assoc($result)) {
// display data
}
}
这应该有用!
应在while循环条件中调用mysql_fetch_assoc
函数。如果你在条件之外调用mysql_fetch_assoc
,它将只返回第一行。