Ik ben nu al een tijdje bezig met programmeren in PHP en heb een begin gemaakt aan een CMS (het staat nog heel erg in de kinderschoenen en het is meer een probeersel voor 'training' van mij zelf).
In het adminscherm heb ik een menustructuur opgebouwd met daarin bv. het kopje Nieuwsberichten.
De link naar nieuwsberichten is dan als volgt: nieuwsberichten.php?cmd=1.
Nieuwsberichten.php via een switch statement opgebouwd en wel als volgt:
Oke, goed het werkt.
Er is maar 1 bestand nodig voor elke soort bewerking (nieuwsberichten, gebruikers, ..).
Maar toch heb ik het gevoel dat het beter en bovenal overzichtelijker kan, de switches beginnen op te lopen tot ontzettende lappen met code wat de leesbaar- en aanpasbaarheid niet echt ten goede komt.
Wat ik dus vraag zijn wat ideeen of suggesties, hoe pakken jullie zoiets aan?
In het adminscherm heb ik een menustructuur opgebouwd met daarin bv. het kopje Nieuwsberichten.
De link naar nieuwsberichten is dan als volgt: nieuwsberichten.php?cmd=1.
Nieuwsberichten.php via een switch statement opgebouwd en wel als volgt:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| switch($_GET['cmd']) { case 1 : { /* hier wordt een overzicht van nieuwsberichten geprint achter elk bericht staan 2 icoontjes nml: bewerken: nieuwsberichten.php?cmd=2 verwijderen: nieuwsberichten.php?cmd=6 onderaan staat nog een knopje met toevoegen nieuwsberichten.php?cmd=4 */ } break; case 2: { /* bewerken een formulier wordt opgebouwd met daarin de waardes weergegeven dit formulier wordt gepost naar case 3 */ } break; case 3: { /* update query maken en uitvoeren */ } break; // voor toevoegen werkt het hetzelfde, 1 case voor het formulier 1 voor de query } |
Oke, goed het werkt.
Er is maar 1 bestand nodig voor elke soort bewerking (nieuwsberichten, gebruikers, ..).
Maar toch heb ik het gevoel dat het beter en bovenal overzichtelijker kan, de switches beginnen op te lopen tot ontzettende lappen met code wat de leesbaar- en aanpasbaarheid niet echt ten goede komt.
Wat ik dus vraag zijn wat ideeen of suggesties, hoe pakken jullie zoiets aan?