2012-11-01 159 views
0

我無法從我正在使用的foreach循環訪問「model_id」和「brand_id」。從MySQL查詢檢索ids

他們是正確的字段名稱,因爲我已經成功地迴應了他們,並且我還「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>'; 
} 
?> 
+2

行集合被存儲到while循環'$ result'。然後使用變量'$ values'循環'$ result',但在內部使用'$ row ['model_id']'。更改爲'$ values ['model_id']' –

回答

2

使用$值,而不是$行試試這個

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>'; 
} 
+0

嘿,感謝您的提示,但沒有工作。 id字段仍爲空 –

+0

嘗試調試$ result。我不確定你爲什麼創建這樣的數組$ row ['model']] []; –

+0

嘿那裏,我已經添加var_dump($結果)菜單下,如果有幫助? –

1

在你的foreach定義$類別和$值,並在該循環您正在使用$行。你不應該使用$values['brand_id']?在foreach循環

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