Hello,
Du solltest von Anfang an in mindestens drei, vermutlich vier Ebenen unterteilen
Display: Zeigt die benötigten Benutzereingabemasken
Login: Ist der interaktive Vorgang, der benötigt wird, um die benötigten Daten
auf Nutzerseite zu beschaffen und den Status zu ändern.
Authenticate: Ist Funktion, die mit Hilfe eines Statusmerkers (z.B. Session-ID)
bei jedem Request den Benutzerstatus zu überprüfen
Rights: ist die Funktion, die aus einem definierten Benutzerstatus für jede
bereitgestellte Funktionalität des Programmes feststellt, ob diese
Funktionalität dem Benutzer zur Verfügung gestellt werden darf.
Und ebenso solltest Du ausgliedern in eigenen Funktionen:
- den Sessionlayer (hier ist ein Singleton sinnvoll)
- die Datenbankverbindung (hier ist genau nachzudenken, ob man ein Singleton haben will,
oder ob mehrere Connections [zur selben DB]
gleichzeitig möglich sein sollen) - die Datenbankzugriffe
...
Das führt dann zu einer hohen Wiederverwendbarkeit des Codes und einer klaren Aufgabenteilung über das gesamte Projekt hinweg.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg