Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用php数组完成html表_Php_Arrays - Fatal编程技术网

使用php数组完成html表

使用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

我试图将行标题插入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 = 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接口。它非常有用。