我試圖從數據庫中的兩個不同表中填充下拉列表,這些表在第三個表中使用前兩個ID進行連接。我用第一個回答here作爲下拉菜單的指南。從數據庫中的兩個不同表中填充下拉列表
表格: courses - id,title; classes - id,title; classes_to_courses - coursesID,classesID
代碼:
<?php
include("global.php");
doHeader();
$currentCourseClass = "SELECT id, title FROM courses";
$rsCurrentCourseClass = mysql_query($currentCourseClass);
while($get_row = mysql_fetch_assoc($rsCurrentCourseClass)) {
$categories[] = array("id" => $get_row['id'], "val" => $get_row['title']);
}
$currentCourseClass2 = "SELECT cl.id as classid, cl.title as classtitle, cr.id as courseid FROM classes_to_courses c2c LEFT JOIN classes cl ON c2c.coursesID = cl.id LEFT JOIN courses cr ON c2c.classesID = cr.id";
$rsCurrentCourseClass2 = mysql_query($currentCourseClass2);
while($get_row = mysql_fetch_assoc($rsCurrentCourseClass2)) {
$subcats[$get_row['courseid']][] = array("id" => $get_row['classid'], "val" => $get_row['classtitle']);
}
/**/
$jsonCats = json_encode($categories);
$jsonSubCats = json_encode($subcats);
?>
我的問題似乎是與第二個查詢,$ currentCourseClass2。如何從連接表classes_to_courses中選擇courseid以便我的數組設置正確?
謝謝。
[**請不要在新代碼中使用'mysql_ *'函數**](http://bit.ly/phpmsql)。他們不再被維護[並被正式棄用](https://wiki.php.net/rfc/mysql_deprecation)。看到[**紅框**](http://j.mp/Te9zIL)?學習[*準備的語句*](http://j.mp/T9hLWi),並使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/ mysqli) - [這篇文章](http://j.mp/QEx8IB)將幫助你決定哪個。如果你選擇PDO,[這裏是一個很好的教程](http://j.mp/PoWehJ)。 – Kermit