章テーブル
CHID | Name | Active | Order
1 Ch2 Y 2
2 Ch5 N 10
3 Ch1 Y 1
ページ テーブル
PID | Name | Active | CHID | Order
1 Ch1P1 Y 1 1
2 Ch1P2 Y 1 2
3 Ch2P2 Y 3 2
4 Ch2P1 Y 3 1
5 Ch5P1 N 2 1
現在の結果では、各章がリストされていますが、各章の下にすべてのページもリストされています。現在のスクリプトの「foreach」部分を取り、Dreamweaver で作成した PHP とマージしました。
を探しています:
Ch1
Ch1P1
Ch1P2
Ch2
Ch2P1
Ch2P2
私の現在のphp/mysqlスクリプト。
$myarray = array();
mysql_select_db($database, $connection);
$query_GetModuleChaptersPages = sprintf("SELECT chapters.CHID, chapters.Chapter_Name AS ChapterName, chapters.MID, chapters.`Order` AS ChapterOrder, pages.PID, pages.Page_Name AS PageName, pages.CHID, pages.Is_Active, pages.`Order` AS PageOrder FROM chapters, pages WHERE chapters.MID = 1"));
$GetModuleChaptersPages = mysql_query($query_GetModuleChaptersPages, $connection) or die(mysql_error());
$row_GetModuleChaptersPages = mysql_fetch_assoc($GetModuleChaptersPages);
$totalRows_GetModuleChaptersPages = mysql_num_rows($GetModuleChaptersPages);
while ($row = mysql_fetch_array($GetModuleChaptersPages, MYSQL_ASSOC)) { $myarray[$row['ChapterName'] ][] = $row['PageName']; }
print "<ul>";
foreach ($myarray as $key => $val) {
print "<li><h5>";
print $key;
print "</h5><ul>";
for($i=0;$i<count($val);$i++){
print "<li>";
print $val[$i];
print "</li>";
}
print "</ul></li>";
}
print "</ul>";