0

使用している foreach ループから「model_id」と「brand_id」にアクセスできません。

それらは正しいフィールド名です。なぜなら、それらを正常にエコーし、配列を「var_dumped」したため、ID がそこにあるからです。これは、各リスト セクションに関連するリンクを実装する場合にすぎません。以下は私が持っているコードです。

<?
$output = mysqli_query("SELECT * FROM bikes, bikeTypes WHERE bikes.model_id = bikeTypes.model_id");
$result = array();
while($row = mysqli_fetch_array($output))
 {
   $result[$row['model']][] = $row;
 }

foreach ($result as $category => $values) {
  echo "<li><a href='test.php?id=" . $row['model_id'] . "'>".$category.'</a><ul>';
    foreach ($values as $value) 
      {
      echo "<li><a href='details.php?id=" . $row['brand_id'] . "'>" . $value['bikeName'] . "</a></li>";
      }
  echo '</ul>';   
  echo '</li>';
 }
?>
4

2 に答える 2

2

foreach ループで $row の代わりに $value を使用する

foreach ($values as $value) 
      {
      echo "<li><a href='details.php?id=" . $value['brand_id'] . "'>" . $value['bikeName'] . "</a></li>";
      }

これを試して

while($row = mysql_fetch_array($output))
 {
   $result[] = $row;
 }
//var_dump($result);
foreach ($result as $key => $val) {
  echo "<li><a href='test.php?id=" . $val['model_id'] . "'>".$key.'</a><ul>';
  echo "<li><a href='details.php?id=" . $val['brand_id'] . "'>" . $val['bikeName'] . "</a></li>";
  echo '</ul>';   
  echo '</li>';
 }
于 2012-11-01T11:03:03.627 に答える
1

foreach で $category と $values を定義し、そのループで $row を使用しています。を使用するべきではありません$values['brand_id']か?

于 2012-11-01T11:01:19.183 に答える