© saicle/Shutterstock.com
PHP-Anwendungen schnell und sicher umgesetzt

Grapes of Content


Unsere mit dem Full-Stack-Framework CodeIgniter erstellte Beispielanwendung „wine­trade“ wollen wir mit Inhalt füllen: ein Eingabeformular mit Fehlerbehandlung, eine Benutzerauthentifizierung oder eine Kommunikationsschnittstelle – all das stellt für CodeIgniter kein Problem dar und geht sehr leicht von der Hand, wenn man sich einmal in die grundlegende Funktionsweise des Frameworks eingearbeitet hat.

Im ersten Teil des Artikels über das PHP-Framework Code­Igniter wurde bereits deutlich, wie man in kurzer Zeit Webanwendungen erstellen, installieren und konfigurieren kann. Um die Beispielanwendung „winetrade“ nun mit Inhalt zu füllen, beschäftigt sich dieser Artikel mit dem Erstellen, Bearbeiten und Löschen von Datensätzen. Zuerst sollte jedoch die Navigation in der Anwendung optimiert werden. Wem nützt schon eine Übersicht über verfügbare Weine, wenn man sie nicht von der Startseite aus erreichen kann? Für diesen Zweck bietet CodeIgniter eine leicht zu bedienende URL-Helper-Klasse, die genau wie die Form-Helper-Klasse automatisch für uns geladen werden soll. Dazu werden beide Klassen in die config/autoload.php eingetragen: $autoload['helper'] = array('url','form');. Jetzt kann man über die Funktion anchor(uri segmente,text,attribute) in jeder View beliebige interne Links erzeugen. Mit anchor('wines/overview','Zur Weinübersicht'); springen wir zum Beispiel von der Startseite direkt zur Weinübersicht. CodeIgniter erzeugt die korrekten Links aus der Basisadresse und dem aufzurufenden Controller beziehungsweise der Funktion. Es spielt auch keine Rolle, ob die index.php in der Adresse benutzt wird. Ein weiterer Vorteil des URL Helpers ist die Nutzung der Funktion redirect(). Damit kann auch innerhalb eines Controllers ein Header Redirect ausgeführt werden, zum Beispiel als Weiterleitung von einer Funktion an die nächste.

CRUD

Um nun Daten in die Datenbank zu schreiben, zu editieren und zu löschen, benötigen wir im Controller einige neue Funktionen (Listing 1). Sie nehmen die Daten der jeweiligen View entgegen und rufen die entsprechende Funktion im Model (Listing 2) auf. Der edit-Funktion wird die ID des Datensatzes übergeben. Ein beispielhafter direkter Aufruf über den URL sieht zum Beispiel wie folgt aus: http://localhost/codeigniter/index.php/wines/edit/2. Damit würde der Datensatz mit der ID 2 aus der Datenbank geladen und dann an die View weitergegeben. Alle Funktionen rufen mithilfe der URL-Helper-Funktion redirect nach erfolgreicher Bearbeitung di...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang