Benutzer-Werkzeuge

Webseiten-Werkzeuge


de:as:dev:main

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
de:as:dev:main [2018-05-25 19:11]
thorsten gelöscht
— (aktuell)
Zeile 1: Zeile 1:
-====== Modulprogrammierung ====== 
  
-===== Grundlagen ===== 
-Jedes Modul besteht aus mindestens zwei Skriptdateien:​ dem Skript, welches die Datenverarbeitung durchführt,​ (im Folgenden als Hauptskript bezeichnet) und mindestens einem Skript, welches die Datenausgabe zum Browser definiert (im Folgenden Templateskript genannt). 
- 
-===== Hauptskript ===== 
-Das Hauptskript ist die Datei, die unmittelbar vom Benutzer aufgerufen wird. In ihr sollte die komplette Datenverarbeitung der Eingaben erfolgen. Ausgaben an den Browser (bspw. via //echo//) sollten hier dagegen nicht stattfinden. Um das Hauptskript in das Tool einzufügen,​ sind einige wenige Vorkehrungen zu treffen, die im folgenden Code veranschaulicht sind: 
- 
-<​code="​php"><?​php 
- 
- ​define('​INCLUDING_ENABLED',​ true); 
- ​$root_path = '​./';​ 
- ​require_once($root_path . '​includes/​common.php'​);​ 
- 
- ... 
- 
- ​templateRender('​mypage'​);​ 
- 
-?></​code>​ 
- 
-Zu aller erst ist die Konstante //​INCLUDING_ENABLED//​ als //true// zu definieren. Ohne diese Vorkehrung verweigert der Kern des Tools jegliche Ausführung. Dies ist Teil eines Sicherheitskonzeptes,​ welches hier aus Platzgründen nicht näher erläutert werden soll. Danach wird in der Variablen //​$root_path//​ der Pfad zum Wurzelverzeichnis definiert. Da bisher alle Skripte im Wurzelverzeichnis liegen, kann die obige Zeile einfach übernommen werden; sollte sich das in Zukunft ändern, bekommst du den korrekten Pfad von mir mitgeteilt. Zuletzt wird die Datei //​common.php//,​ so wie oben notiert, eingebunden. Dadurch wird der gesamte Kern des Tools initialisiert:​ Datenbankanbindung hergestellt,​ Benutzerinformationen abgerufen, Sessions aktualisiert,​ Konfigurationsdaten gelesen, alle wesentlichen Funktionen zur Verfügung gestellt, etc. 
- 
-Anschließend kannst du frei programmieren. -.- 
- 
-Zum 
- 
- 
- 
-^ Variablenname ^ Funktion ^ 
-| $userdata['​user_id'​] ​ | Interne ID des angemeldeten Benutzers ​ | 
-| $userdata['​user_name'​] ​ | Benutzername des angemeldeten Benutzers ​ | 
-| $userdata['​user_level'​] ​ |   | 
-| $userdata['​user_signature'​] ​ | Signatur des angemeldeten Benutzers (falls angegeben) ​ | 
-| $userlevel[] ​ | Array mit der Rollenbeschreibung zur jeweiligen Level-ID ​ |