Webapplikationen I (PHP Advanced)
In dieser Unterrichtsstunde wurde die Programmiersprache PHP und der Umgang damit weiter vertieft. Dabei wurde zuerst bereits Bekanntes wiederholt und im Anschluss einfache PHP-Strukturen in Erinnerung gerufen, um wieder allmählich in die Syntaxschreibweise dieser Sprache hineinzukommen. Durch den zuvor erlernten Umgang mit Datenbanken und SQL-Abfragen sowie virtuellen Webserverapplikationen, konnte in dieser Stunde die Verbindung zwischen diesen beiden Webentwicklungsbereichen (PHP und SQL) geschaffen werden. Dazu wurde ein einfaches PHP-Skript innerhalb einer Projektseite erstellt, welches aus der bereits bekannten TERRA-Datenbank gewisse Datensätze auf der Webseite abbildete. In diesem Sinne wurde zuerst ein kurzes Verbindungsskript programmiert, welches mittels richtiger Zeichenkodierung und Error-Exception eine Datenbankverbindung aufbaut und anschließend diverse SQL-Queries dazugeschrieben, um die Übergabe von Abfragewerten in Variablen zu üben und die Ausgabe von Ergebnissen zu kontrollieren. Abschließend wurde noch der Unterschied zwischen einer iterativen Ausgabe (z.B. while-Schleife) sowie einer fetched-Variable (fetched Werte einzelner Tabellenspalten) erklärt und nachträglich innerhalb der PHP-Skripte getestet.
Kompetenzen
- Ich kenne den Unterschied zwischen HTML und PHP und weiß wie PHP in Webseiten eingreifen kann.
- Ich verstehe wie Webserver und Datenbankserver im Hintergrund einer Webseite arbeiten und kenne virtuelle Applikationen.
- Ich verstehe wie man PHP-Funktionen aufrufen kann und kann mir über Manual-Pages der PHP-Dokumentation weiterhelfen.
- Ich kann kleinere PHP-Skripts erstellen und die Ergebnisse dieser mit Hilfe des echo Befehls ausgeben lassen.
- Ich kann Kontrollstrukturen wie Verzweigungen oder Schleifen in PHP programmieren und verstehe das Prinzip hinter ihnen.
- Ich verstehe wie man ein Verbindungsskript in PHP schreibt und welche Elemente dafür benötigt werden.
Vertiefung
- dbconnect.php
<?php $db_host = 'localhost'; $db_username = 'root'; $db_password = 'root'; $db_name = 'testdb'; $dbconnect = new mysqli($db_host, $db_username, $db_password, $db_name); mysqli_set_charset($dbconnect, 'utf8'); if (mysqli_connect_errno()) { echo 'Verbindungsfehler zur MySQL Datenbank - Fehlercode: ' . mysqli_connect_error(); } ?>
- citycheck.php
<?php $citycheck = "SELECT Name FROM ort WHERE Einwohner >= 100000 LIMIT 10"; $dbconnect->real_escape_string($citycheck); $query = mysqli_query($dbconnect, $citycheck); $numrows = mysqli_num_rows($query); $cities = ''; if ($numrows == 0) { $cities.= '<p>Keine Orte gefunden!</p>'; } else { while($row = mysqli_fetch_assoc($query)) { $cities.= '<p>'.$row['Name'].'</p>'; } } echo $cities; ?>
Weiterführende Links