Hallo,
ich habe eine Funktion die ich gerne öfter anzeigen lassen möchte. Leider wird immer nur einmal die Auflistung angezeigt.
Ausgabe:
Funktion:
Alles anzeigen
ich habe eine Funktion die ich gerne öfter anzeigen lassen möchte. Leider wird immer nur einmal die Auflistung angezeigt.
Ausgabe:
Funktion:
Quellcode
- function getMenu($menuTyp) {
- $pdoparams = array(
- );
- $sql = "SELECT
- *
- FROM
- menu_info
- WHERE
- menuTyp = $menuTyp
- ORDER BY
- parentID, menuSort
- ";
- $stmt = MyDB::getInstance()->prepare($sql);
- $stmt->execute($pdoparams);
- $arrayCategories = array();
- while ($row = $stmt->fetch()) {
- $arrayCategories[$row->menuID] = array("parentID" => $row->parentID, "name" => $row->menuName);
- }
- function createTree($array, $currentParent, $currLevel = 0, $prevLevel = -1) {
- foreach ($array as $categoryId => $category) {
- if ($currentParent == $category['parentID']) {
- if ($currLevel > $prevLevel) echo " <ul> ";
- if ($currLevel == $prevLevel) echo " </li> ";
- echo '<li id="'.$categoryId.'"><span>'.$category['name'].'</span>';
- if ($currLevel > $prevLevel) { $prevLevel = $currLevel; }
- $currLevel++;
- createTree ($array, $categoryId, $currLevel, $prevLevel);
- $currLevel--;
- }
- }
- if ($currLevel == $prevLevel) echo " </li> </ul> ";
- }
- createTree($arrayCategories, 0, 0, 0);
- }