我正在尝试将行标题插入到一个html表格中,该表格后来由内存来自MYSQL查询的php数组填充。用php数组完成一个html表格
我已经得到了一切的代码,除了行标题在每行开头的4列重复,而不是只显示$ item [1]为第一行,$ item [2]为第二行,依此类推。
这里是我的代码:
// query the database
$result = mysql_query($query_getproductbrands);
// cols we are interested in (from the SQL query)
$cols = array(
'productName',
'brandName',
'productDescription',
'productPrice',
);
$titles = array(
'Product',
'Brand',
'Description',
'Price',
);
// initialize rotated result using cols
$rotated = array();
foreach($cols as $col) {
$rotated[$col] = array();
}
// fill rotated array
while(($row = mysql_fetch_assoc($result)) !== false) {
foreach($cols as $col) {
$rotated[$col][] = $row[$col];
}
}
// echo html
echo "<table border=1 width=473>";
echo "<tr>";
echo "</tr>";
foreach($rotated as $col => $values) {
echo "<tr>";
foreach($titles as $title) {
echo "<td> " . htmlentities($title) . "</td>";
}
foreach($values as $value) {
echo "<td> " . htmlentities($value) . "</td>";
}
echo "</tr>";
}
echo "</table>";
?>
因此,这是生产含有表:
产品品牌描述价格产品1产品产品3
产品品牌说明价格brand1 brand2 brand3
产品品牌描述价格description1 description2 description3
产品品牌说明价格价格1 price2 price3
而且我想它产生含有表:
产品产品1产品产品3
品牌brand1 brand2 brand3
描述内容描述的内容描述description3
价格价格1价格2价格3
我想过为第一个'title'数组做一个循环,然后是'values'数组的循环,但这不起作用。
如果我在第一个循环中回显$ col,我只是重复了第一个值(产品),我可以选择$ title [0],但我不确定如何将它增加到每一行然后为剩余的数据查询(值)实现循环。
请有人提供一些建议,以实现所需的表?
waaaa,所以很多人仍然使用mysql_ *。它已被弃用。移到MySQLi这里;它是无痛的。 – Amelia 2013-02-18 23:17:54
Hiroto,你在说什么 - 如果我使用$ result = mysqli_query($ query_getproductbrands);我会得到与使用$ result = mysql_query($ query_getproductbrands)完全一样的东西; ?? – 2013-02-19 10:58:09
'$ db = mysqli_connect(* vars); $ result = mysqli_query($ db,$ sql);'(* vars是你的连接细节)。所以是的,但尝试看OOP界面。这非常有用。 – Amelia 2013-02-19 13:15:40