2

我需要显示 mysql 表列而不在代码中指定列名,而且我也不知道表中的列总数。

这是我的代码:

$result = mysqli_query($con,"SELECT * FROM test_table");
echo "<table border='1'>";
while($row = mysqli_fetch_array($result))
{
    echo "<tr>";
    foreach ($row as $item){
        echo "<td>" . $item . "</td>";
    }
    echo "</tr>";
}
echo "</table>";

但输出如下:

在此处输入图像描述

即每个列的值都在重复。请帮帮我。

4

2 回答 2

4

这是因为mysqli_fetch_array同时获取关联数组和数值数组。尝试使用mysqli_fetch_assocmysqli_fetch_row

或者,您可以在 中指定一个参数mysqli_fetch_array,如下所示:

mysqli_fetch_array($result, MYSQLI_ASSOC)

或者

mysqli_fetch_array($result, MYSQLI_NUM)
于 2013-07-24T19:58:24.727 回答
1

改变

while($row = mysqli_fetch_array($result))

while($row = mysqli_fetch_row($result))
于 2013-07-24T19:58:15.767 回答