db:webdatenbanken
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungLetzte ÜberarbeitungBeide Seiten der Revision | ||
db:webdatenbanken [2014/05/01 13:41] – [Zugriff auf eine MySQL-Datenbank] roehner | db:webdatenbanken [2016/11/22 20:43] – [Zugriff auf eine MySQL-Datenbank] roehner | ||
---|---|---|---|
Zeile 4: | Zeile 4: | ||
===== Voraussetzungen ===== | ===== Voraussetzungen ===== | ||
==== Datenbankserver ==== | ==== Datenbankserver ==== | ||
- | Zur Bereitstellung der Datenbanken kommen spezielle Datenbankserver zum Einsatz, die meist mehrere Benutzer und Datenbanken verwalten können. Für uns bedeutend ist der relationale Open-Source-Datenbankserver [[http://www.mysql.org |MySQL]]. | + | Zur Bereitstellung der Datenbanken kommen spezielle Datenbankserver zum Einsatz, die meist mehrere Benutzer und Datenbanken verwalten können. Für uns bedeutend ist der relationale Open-Source-Datenbankserver [[http://dev.mysql.com/ |MySQL]]. |
Unser Datenbankserver ist erreichbar über http:// | Unser Datenbankserver ist erreichbar über http:// | ||
Zeile 18: | Zeile 18: | ||
Um eine Anwendungslogik bereitzustellen, | Um eine Anwendungslogik bereitzustellen, | ||
- | Einen Einstieg in PHP bietet das [[http://www.php.net/ | + | Einen Einstieg in PHP bietet das [[http://de2.php.net/ |
Die PHP-Skripte werden auf dem Server ausgeführt und müssen deshalb auch dort vorhanden sein. Zum Übertragen der | Die PHP-Skripte werden auf dem Server ausgeführt und müssen deshalb auch dort vorhanden sein. Zum Übertragen der | ||
Zeile 126: | Zeile 126: | ||
Einer der wichtigsten Aspekte einer dynamischen Webseite ist die Interaktion mit dem Anwender. Die einzige Möglichkeit des Anwenders Informationen an das PHP-Skript zu übermitteln, | Einer der wichtigsten Aspekte einer dynamischen Webseite ist die Interaktion mit dem Anwender. Die einzige Möglichkeit des Anwenders Informationen an das PHP-Skript zu übermitteln, | ||
- | Der Zugriff in PHP erfolgt über die globalen Variablen $_GET und $_POST, welche ein assoziatives Array darstellen. Auf den Wert des Schlüssels " | + | Der Zugriff in PHP erfolgt über die globalen Variablen $_GET und $_POST, welche ein assoziatives Array darstellen. Auf den Wert des Schlüssels " |
==== Beispiel: Umgang mit einem GET-Parameter ==== | ==== Beispiel: Umgang mit einem GET-Parameter ==== | ||
Zeile 177: | Zeile 177: | ||
==== Zugriff auf eine MySQL-Datenbank ==== | ==== Zugriff auf eine MySQL-Datenbank ==== | ||
- | PHP stellt | + | PHP stellt |
+ | - mysql - eine veraltete prozedurale Schnittstelle, nicht mehr in PHP 7 vorhanden | ||
+ | - mysqli - eine objektorientierte Schnittstelle ab PHP 5.0 | ||
+ | - PDO_MySQL - eine streng objektorientierte Schnittstelle ab PHP 5.1 | ||
- | Der MySQL-Datenbankserver pflegt eine eigene Benutzer- und Rechteverwaltung. Wir müssen uns also zunächst verbinden und authentifizieren. Dazu erzeugen wir ein Objekt der PDO-Klasse, dessen Konstruktor wir einen sogenannten Data Source Name (DSN), den Benutzernamen | + | |
+ | Der MySQL-Datenbankserver pflegt eine eigene Benutzer- und Rechteverwaltung. Wir müssen uns also zunächst verbinden und authentifizieren. Dazu erzeugen wir ein Objekt der mysqli-Klasse, dessen Konstruktor wir den Datenbankserver, den Benutzernamen, das Passwort | ||
<code php> | <code php> | ||
- | $db = new PDO(" | + | |
</ | </ | ||
- | Über das [[http:// | + | Über das $mysqli-Objekt können wir jetzt SQL Abfragen durchführen. |
<code php> | <code php> | ||
- | $query = $db-> | + | $result |
- | $result | + | |
- | + | while ($entry = mysql_fetch_assoc($result)) { | |
- | | + | |
echo " | echo " | ||
} | } | ||
+ | |||
</ | </ | ||
- | Da der Schulserver aber PDO derzeit nicht unterstützt, | ||
- | <code php> | ||
- | $db = mysql_connect(" | ||
- | | ||
- | |||
- | | ||
- | |||
- | | ||
- | echo " | ||
- | } | ||
- | </ | ||
===== Aufgaben ===== | ===== Aufgaben ===== | ||
- | Ziel der u.g. Aufgaben ist ein sehr einfaches Gästebuch auf PHP-Basis mit Nutzung einer MySQL-Datenbank zum Speichern der Einträge. Zur Hilfe bei der Umsetzung gibt es [http:// | + | Ziel der u.g. Aufgaben ist ein sehr einfaches Gästebuch auf PHP-Basis mit Nutzung einer MySQL-Datenbank zum Speichern der Einträge. Zur Hilfe bei der Umsetzung gibt es [[http:// |
- | **Aufgabe 1** | + | **Aufgabe 1**\\ |
Nachdem der Benutzer das Formular abgeschickt hat, soll überprüft werden, ob er alle Formularfelder auch ausgefüllt hat. Ist dies der Fall, werden ihm seine Eingaben zur Bestätigung ausgegeben. Andernfalls bekommt er eine Fehlermeldung angezeigt. | Nachdem der Benutzer das Formular abgeschickt hat, soll überprüft werden, ob er alle Formularfelder auch ausgefüllt hat. Ist dies der Fall, werden ihm seine Eingaben zur Bestätigung ausgegeben. Andernfalls bekommt er eine Fehlermeldung angezeigt. | ||
Zeile 217: | Zeile 210: | ||
* [[http:// | * [[http:// | ||
- | **Aufgabe 2** | + | **Aufgabe 2**\\ |
Bestehende Einträge anzuzeigen ist eine der Hauptaufgaben eines Gästebuchs. Die Einträge sollen nun auf der Startseite aufgelistet werden. Wir verzichten hierbei darauf, die Einträge auf mehrere Seiten zu verteilen, alle Einträge sollen auf einer einzelnen Seite gezeigt werden. (eintraege.php) | Bestehende Einträge anzuzeigen ist eine der Hauptaufgaben eines Gästebuchs. Die Einträge sollen nun auf der Startseite aufgelistet werden. Wir verzichten hierbei darauf, die Einträge auf mehrere Seiten zu verteilen, alle Einträge sollen auf einer einzelnen Seite gezeigt werden. (eintraege.php) | ||
Hierfür werden die [[http:// | Hierfür werden die [[http:// | ||
db/webdatenbanken.txt · Zuletzt geändert: 2016/11/22 20:44 von roehner