我遇到了一个问题,并尝试解决这个问题 4 个小时,但到目前为止还没有解决。 我有动态数据,我喜欢将其显示为如下表格
标题1............标题2............标题N
标题 1 的数据 1...标题 2 的数据 1...标题 N 的数据 1
Header1 的 data2.... Header2 的 data2.... HeaderN 的 data2
Header1 的 data3.... Header2 的 data3.... HeaderN 的 data3
...................................................... …………
header 1 的数据 N... header 2 的数据 N... header N 的数据 N
这是我的代码:
foreach($query_all_field as $secondary_data):
?><th><?php echo $secondary_data;?></th><?php
$sql_data = mysql_query("SELECT `$secondary_data` FROM `$table_name`");
if(mysql_num_rows($sql_data)){
while($result_data = mysql_fetch_object($sql_data)){
?><tr><td><?php echo $result_data->$secondary_data;?></td></tr><?php
}
}
endforeach;
最重要的是$secondary_data
是完全动态的表的所有 header 名称。然后我尝试查找每个 header 的数据。
但现在显示如下:
标题1
Header1 的 data1
Header1 的 data2
Header1 的 data3
header 2
Header2 的 data1
Header2 的 data2
Header2 的 data3
。 。 .
header N
HeaderN 的 data1
HeaderN的data2
HeaderN 的 data3
最佳答案
您没有正确构建表格。您在关闭/使用前面的元素之前打开了 TR
元素。尝试:
echo '<table><tr>';
foreach($query_all_field as $secondary_data):
?>
<td>
<table>
<tr><th><?php echo $secondary_data;?></th></tr>
<?php
$sql_data = mysql_query("SELECT `$secondary_data` FROM `$table_name`");
if(mysql_num_rows($sql_data)){
while($result_data = mysql_fetch_object($sql_data)){
?><tr><td><?php echo $result_data->$secondary_data;?></td></tr><?php
}
}?>
</table>
</td>
<?php
endforeach;
echo '</tr></table>';
关于php - 按列将动态数据显示为表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17069110/