如何在php中获取和显示数据库的所有数据

时间:2013-08-29 13:29:28

标签: php html mysql

我正在创建一个Web应用程序,我需要在其中显示数据库中的所有行,代码和数据库结构是:

    ------------------------------------------
    id | product_name | link
    ------------------------------------------
     1 | example_1    | #
     2 | example_2    | #
     3 | example_3    | #

mysql_query($sql);
$sql = "SELECT * FROM `site_product` WHERE `product_cat` = 'home'";

    while ($row = mysql_fetch_assoc($result)) {
    echo "$row['product_name'];" }

所以我只得到一个结果,其余的行没有输出我想到使用“forloop”但dnt有任何想法实现它..请帮助。

4 个答案:

答案 0 :(得分:0)

在你编写的这段代码中,}在String中,所以循环没有关闭。

这是我在这部分代码中看到的唯一问题。

答案 1 :(得分:0)

在获取数据之前,您必须先调用mysql_query:您的代码已更正

$sql = "SELECT * FROM `site_product` WHERE `product_cat` = 'home'";
$result = mysql_query($sql);
while ($row = mysql_fetch_assoc($result)) {
    echo $row['product_name']; 
}

答案 2 :(得分:0)

我想知道你是否要求这个:

echo "<table>";
while ($row = mysql_fetch_assoc($result)) 
{
    echo "<tr>";
    foreach ($row AS $field)
        echo "<td>$field</td>";
    echo "</tr>";
}
echo "</table>";

答案 3 :(得分:0)

$result在哪里定义???你复制错了。
使用此:

$sql = "SELECT * FROM `site_product` WHERE `product_cat` = 'home'";
$result = mysql_query($sql);
    while ($row = mysql_fetch_assoc($result)) {
    echo $row['product_name']; }