我试图显示一系列规格的汽车:重量,长度,宽度 一切都会在一个foreach内部,但在一段时间内,但我无法正常运行......
我的桌子
汽车:
idcar:1 /宽度:30 /长度:10 /重量:300
idcar:2 /宽度:20 /长度:12 /重量:210
idcar:3 /宽度:20 /长度:21 /重量:230
idcar:4 /宽度:40 /长度:11 /重量:210
和规格表:
idspec:1规格:宽度
idspec:2规格:重量
idspec:3规格:长度
我的代码
$idcar = $_GET['idcar'];
$resultcarfirst = mysqli_query($connecDB,"select * from products order by (case idcar when $idcar then 0 else idcar end), $idcar asc");
$resultspec = mysqli_query($connecDB, "SELECT * FROM specs ORDER BY idspec");
while($rowspec = mysqli_fetch_array($resultspec)){
echo '<div><h1>'.$rowspec["spec"].'</h1><br/>';
$arraycars = array();
while($rowcar = mysqli_fetch_array($resultcarfirst))
$arraycars[] = $rowcar;
foreach($arraycars as $rowcar){
echo '<p>idcar:'.$rowcar['idcar'].' '.$rowspec['spec'].': '.$rowcar[$rowspec['spec']].'</p>';
}
echo '</div><br/>';
}
输出结果为:
宽度
idcar:1宽度:30
idcar:2宽度:20
idcar:3宽度:20
idcar:4宽:40
重量
idcar:1重量:300
idcar:2重量:210
idcar:3重量:230
idcar:4重量:210
长度
idcar:1长度:10
idcar:2长度:12
idcar:3长度:21
idcar:4长度:11
谢谢你,我希望我很清楚。
答案 0 :(得分:2)
你为什么要这样做???
你需要的只是......
$arraycars = array();
while($rowcar = mysql_fetch_array($resultcarfirst)){
echo '<p>idcar:'.$rowcar['idcar'].' '.$rowspec['name'].': '.$rowcar[$rowspec['spec']].'</p>';
$arraycars[] = $rowcar;}
除非我完全误解你想做什么。?
另外......如果你想只为那辆车拉sspec ......那么while循环,你必须改变你的查询以接受来自第一个while循环的变量,如果你知道我的意思< / p>