[PHP] Probleem met formuleren multi-array

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Reveller
  • Registratie: Augustus 2002
  • Laatst online: 05-12-2022
Ik ben bezig met een admin omgeving te klussen. Voor de navigatie kies ik voor een stel tabjes bovenaan de pagina, als volgt:

PHP:
1
2
3
4
$arr_admin_tabs = array (
    "tab" => array("Merken", "Categoriën", "Producten", "Settings", "Artikelen"),
    "page" => array ("brands.php", "categories.php", "products.php", "settings.php", "articles.php")
    );

Met de volgende code genereer ik een tabel:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$htm_admin_tabs .= "<table cellspacing=\"0\" cellpadding=\"3\" border=\"0\"><tr>";

for ($i = 0; $i < $int_admin_tabs; $i++){
    if($str_section == $arr_admin_tabs['section'][$i]){
        $str_bgcolor = "lime";
    } else {
        $str_bgcolor = "red";
    }

    $htm_admin_tabs .= "<td bgcolor=\"".$str_bgcolor."\"><a href=\"".$_URL['admin'].$arr_admin_tabs['page'][$i]."\">".
                       $arr_admin_tabs['tab'][$i]."</a></td>";

    if($i != ($int_admin_tabs-1)){
        $htm_admin_tabs .= "<td>[img]\"spacer.gif\"[/img]</td>";
    }
}

$htm_admin_tabs .= "</tr></table>";

En dat ziet er als volgt uit:
Afbeeldingslocatie: http://www.danandan.luna.nl/tabjes1.gif

Ik heb eea in een array staan en niet in een database omdat de admin, eenmaal gemaakt, toch niet vaak aangepast zal worden. Het is onzin om daar elke keer een gang voor naar de database te moeten maken.

Wat ik nu nog wil is een subnavigatie bij elk tabje. Ongeveer zo:
Afbeeldingslocatie: http://www.danandan.luna.nl/tabjes2.gif

Je begrijpt dat de tabjes categorien, producten etc. allen een andere subnavigatie krijgen.

Ik wil ook deze subnavigatie in een array stoppen, maar in plaats van 5 aparte arrays te moeten maken, moet ik volgens mij ook een sub-array in de admin_tabs array kunnen stoppen.

Nu heb ik gezocht op multidimensionale array's, maar kon geen duidelijke tutorial vinden. Bovendien is hetgeen ik al heb toch een multi-array :?

vragen:
1. heb ik gelijk over het multi-array aspect?
2. hoe zou ik in deze array de subnavigaties kunnen stoppen?
3. of is het beter aparte array's daarvoor aan te maken?

"Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure."


Acties:
  • 0 Henk 'm!

  • dingstje
  • Registratie: Augustus 2002
  • Laatst online: 02-01-2024
Kan je beter iets als volgt gebruiken:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
Array (
0 => Array (
naam => 'Merken',
url => 'brands.php',
subtabs => Array (
0 => Array (
naam => 'Add merk',
url => 'add_brand.php'
)
...
)
...
)


En die kan je dan loopen met
PHP:
1
foreach ($tabs as $row) { echo "<a href=\"{$row['url']}\">{naam}</a>"; }
en voor de subtabs:
PHP:
1
foreach ($tabs[0]['subtabs'] as $row) { echo "<a href=\"{row['url']}\">{naam}</a>"; }

If you can't beat them, try harder