使用php数组完成html表
我试图将行标题插入html表,该表稍后由一个php数组填充,其内容来自MYSQL查询 我有代码来做所有事情,除了行标题在每行开头的4列中重复,而不仅仅是第一行显示$item[1],第二行显示$item[2],依此类推 这是我的密码:使用php数组完成html表,php,arrays,Php,Arrays,我试图将行标题插入html表,该表稍后由一个php数组填充,其内容来自MYSQL查询 我有代码来做所有事情,除了行标题在每行开头的4列中重复,而不仅仅是第一行显示$item[1],第二行显示$item[2],依此类推 这是我的密码: // query the database $result = mysql_query($query_getproductbrands); // cols we are interested in (from the SQL query) $cols = arr
// 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>";
?>
//查询数据库
$result=mysql\u query($query\u getproductbrands);
//我们感兴趣的COL(来自SQL查询)
$cols=数组(
“产品名称”,
“品牌名称”,
“产品说明”,
“产品价格”,
);
$titles=数组(
“产品”,
“品牌”,
“说明”,
"价格",,
);
//使用cols初始化旋转结果
$rotated=array();
foreach($cols作为$col){
$rotated[$col]=array();
}
//填充旋转数组
while(($row=mysql\u fetch\u assoc($result))!==false){
foreach($cols作为$col){
$rotated[$col][]=$row[$col];
}
}
//回声html
回声“;
回声“;
回声“;
foreach($col=>$value){
回声“;
foreach($title作为$title){
回显“.htmlentities($title)。”;
}
foreach($value作为$value){
回显“.htmlentities($value)。”;
}
回声“;
}
回声“;
?>
因此,这将生成一个表,其中包含:
产品品牌说明价格产品1产品2产品3
产品品牌说明价格品牌1品牌2品牌3
产品品牌说明价格说明1说明2说明3
产品品牌说明价格价格1价格2价格3
我希望它生成一个表,其中包含:
产品产品1产品2产品3
品牌1品牌2品牌3
描述描述1描述2描述3
价格价格1价格2价格3
我曾考虑过对第一个“title”数组进行循环,然后对“values”数组进行循环,但这不起作用
如果我在第一个循环中回显$col,则只会重复第一个值(乘积),我可以选择$title[0],但我不确定如何在每一行上增加该值,然后为剩余的数据查询(值)实现循环
请有人提供一些建议,以实现所需的表格?将其移出foreach循环:
foreach($titles as $title) {
echo "<td> " . htmlentities($title) . "</td>";
}
foreach($title作为$title){
回显“.htmlentities($title)。”;
}
最好放在这里之间:
echo "<tr>";
<-- Put me here.
echo "</tr>";
echo”“;
我不确定这是否有效。我是不是把整个foreach循环放在你说的回音位之间,再往上放代码?它似乎将4列标题放在了顶部。waaaa,所以很多人仍然在使用mysql。它已被弃用。在这里移动到MySQLi;Hiroto,你在说什么?如果我使用$result=mysqli\u query($query\u getproductbrands);我会得到与使用$result=mysql\u query($query\u getproductbrands)完全相同的结果吗<代码>$db=mysqli_connect(*vars)$结果=mysqli_查询($db,$sql)代码>(*变量是您的连接详细信息)。所以是的,但是试着看看OOP接口。它非常有用。