试图在div中获取MySQL数据

时间:2013-03-19 13:58:02

标签: php mysql

我正在尝试从div中的MySQL数据库中的每一行获取特定内容,但它只显示id值最高的行中的内容。

mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");

$query = "SELECT * FROM articles ORDER BY id";
$result = mysql_query($query) or die(mysql_error());

$count = mysql_num_rows($result);

while($row = mysql_fetch_array($result))
{
    $title = $row['title'];
    $summary = $row['summary'];
}
?>

<div class="content">
    <h2 class="titlecss"><?php echo ($title)?></h2>
    <p class="customfont"><?php echo ($summary)?></p>
</div>

有谁能解释我在这里做错了什么?我一直在浏览互联网2小时但似乎找不到任何东西......

2 个答案:

答案 0 :(得分:2)

你需要在while循环中输出每个div:

while($row = mysql_fetch_array($result))
{
    $title = $row['title'];
    $summary = $row['summary'];
    ?>
    <div class="content">
    <h2 class="titlecss"><?php echo ($title)?></h2>
    <p class="customfont"><?php echo ($summary)?></p>
    </div>
    <?php
}

答案 1 :(得分:0)

你应该这样做:

while($row = mysql_fetch_array($result)) {
   echo "<div class=\"content\">";
   echo "<h2 class=\"titlecss\">" . $row['title'] . "</h2>";
   echo "<p class=\"customfont\">" . $row['summary'] .  "</p>";
   echo "</div>";
}

您执行此操作的方式,将每个值存储在同一个变量中。所以你把第一个值,然后第二个值放在第一个值,然后是第二个值,然后放在前一个值上,最后你写一次(最后一个值)。