1

我想在 PHP 页面中显示列名和值。

while($get_info = mysql_fetch_row($orderdetails))
{
    foreach ($get_info as $field)
    {
        echo "<td>" . $field . "</td>";
    }

    echo '</tr>';
}

这仅获取值。我如何也显示列名?

列名是order_id, productid, product_discount, amount, customerid, order_date

4

6 回答 6

5
while($get_info=mysql_fetch_array($orderdetails))
{
    foreach ($get_info as $key => $val)
        {
            echo "<td>" .$key. ': ' . $val . "</td>";
        }
            echo '</tr>';
}
于 2012-06-21T14:05:19.857 回答
4

您只是缺少 foreach 中的密钥:

while($get_info=mysql_fetch_assoc($orderdetails))
{
    foreach ($get_info as $field => $value)
    {
        echo "<td>" .$field.': '.$value."</td>";
    }
    echo '</tr>';
}

您可能需要查看您的 foreach php 文档以获取更多信息:

http://php.net/manual/en/control-structures.foreach.php

于 2012-06-21T14:05:29.060 回答
3

如果您希望每个字段都包含列名,请将其更改为mysql_fetch_array并执行以下操作:

foreach($get_info as $key => $value) {
    echo "<td>$key: $value</td>";
}

如果您希望列名位于表格的顶部,您可以检查第一行(如果您确定表格不会为空):

$first = true;

while($get_info = mysql_fetch_assoc($orderdetails)) {
    echo '<tr>';

    if($first) {
        $first = false;

        foreach(array_keys($get_info) as $columnName) {
            echo '<th>' . $columnName . '</th>';
        }

        echo '</tr><tr>';
    }

    foreach($get_info as $field) {
        echo '<td>' . $field . '</td>';
    }

    echo '</tr>';
}

如果您不确定该表是否至少包含一个元素,我会使用第二个DESCRIBE查询。

于 2012-06-21T14:06:09.653 回答
1
 while ($get_info=mysql_fetch_assoc($orderdetails))
    {
        foreach ($get_info as $columnName => $field)
            {
                echo "<td>$columnName: $field</td>";
            }
                echo '</tr>';
    }

请注意,我正在使用 mysql_fetch_assoc() 来获取以列名作为键的行。

于 2012-06-21T14:07:42.863 回答
1
<?php
 while($get_info=mysql_fetch_array($orderdetails))
 {
    foreach ($get_info as $key => $val)
    {
        echo "column is " .$key. 'and value is  ' . $val ;
    }
        echo '</br>';
  }




     ?>
于 2012-06-21T14:13:00.440 回答
0

很多人都在使用 key => val 演示,但是您的代码将起作用,只是您的 $field 现在是一个键,因此您需要告诉它要查看的列。

回声时就走

echo "<td>" . $field->column . "</td>";

那应该行得通。

于 2012-06-21T14:22:00.053 回答