如何在动态表中设置列名?

时间:2013-01-18 19:00:32

标签: php mysqli

我正在从数据库中检索列名为script_idscript_name等的结果,现在我正在做的是从表中获取结果后说我获取了2列,例如{ {1}}和script_id所以保存用逗号分隔的名称并使用循环,但是如果我不知道用户选择了多少参数,以及它将返回多少参数呢?例如正在做什么

script_name

但是如果我有一个具有不同参数的表格来选择 所以在这里我不能有我定义的列名的预定义列表,因为用户可能会或可能没有选择列

那么如何使用前端的MY DEFINED COLUMN HEADERS动态生成表格

2 个答案:

答案 0 :(得分:1)

您不需要知道您有多少列。 而不是数字,你必须使用字段名称

<?
$trans = array (
    'script_name'  => 'Fancy script name field header',
    'script_value' => 'Fancy script value  field header',
}
$data = $db->getAll("SELECT * FROM table");
$keys = array_keys($data[0]);
?>
<table>
  <tr>
<? foreach ($keys as $k): ?>
    <td><?=$trans[$k]?></td>
<? endforeach ?>
  </tr>
<? foreach ($data as $row): ?>
  <tr>
<?     foreach ($row as $one): ?>
    <td><?=$one?></td>
<?     endforeach ?>
  </tr>
<? endforeach ?>
</table>

答案 1 :(得分:0)

如何获取数据?

如果您使用mysqli_fetch_assoc之类的功能,则可以使用

$row = mysqli_fetch_assoc( ... );
$columns = array_keys($row)
相关问题