Hallo aek,
also im Grunde genommen ist das recht einfach.
Es gibt sicherlich viele verschiedene Möglichkeiten, per PHP auf eine Datenbank zuzugreifen (z.B. über Frameworks etc.) aber ich werde dir mal die Variante zeigen, mit der ich das damals gelernt habe.
Ich gehe einfach mal davon aus, dass du eine XAMPP installation verwendest. Solltest du den Webserver auf einem Linux System aufgesetzt haben (apache2 / lighty) musst du zusätzlich eine Datenbank installieren (MySQL / postgreSQL / …), und für den Webserver entsprechende Zusatzmodule installieren. Bei Xampp ist das alles direkt dabei. (Apache2 und MySQL ist dort standardmäßig verwendet)
Was du vorher schonmal gemacht haben solltest:
PHPMyadmin verwenden (bei XAMPP dabei)
SQL Syntax verwendet haben
Stichwörter wie:
SELECT
INSERT
UPDATE
…
sollten dir schon was sagen
PHP Schleifen wie z.B. While verwendet haben
Also der DB zugriff funktioniert forlgendermaßen:
Als erstes baust du eine Verbindung zum DB Server auf.
Das machst du mit der PHP Funktion „mysql_connect“.
Diese Funktion erwartet 3 Parameter (Serveradresse, Benutzername, Passwort), und hat einen Rückgabewert: den Link identifier (wird interessant wenn du mit mehreren DB´s innerhalb eines Skriptes arbeitest)
Dann gibt es eine Funktion, in der du die entsprechende Datenbank auswählst. (Rückgabewert: bool -> erfolgreich oder nicht erfolgreich)
Ist das geschehen, baust du dir ein SQL Query zusammen, und führst dieses aus.
Dieses Query wird mit der Funktion „mysql_query“ asugeführt. (Rückgabewert im Beispiel: Ressource -> damit arbeitst du nacher weiter)
Um Daten nun aus der Ressource auszulesen gitbs die Funktion „mysql_fetch_array“, oder „mysql_fetch_row“, oder auch „mysql_fetch_assoc“.
Hier mal ein Beispiel:
Gehen wir mal von der Situation aus, du hast eine Schulklasse in einer Tabelle „Schueler“ in der Datenbank „Schulklasse“ mit folgenden Attributen liegen:
ID
<?php //DB Verbindung herstellen zu "localhost" als Benutzer "root" ohne Passwort (standard bei XAMMP)
if(!$linkID = mysql\_connect("localhost", "root", "")){
die("Datenbank-Server-Verbindung konnte nicht hergestellt werden");
}
//Nun eine Datenbank auswählen
if(!mysql\_select\_db("Schulklasse", $linkID)){
die("Datenbank konnte nicht ausgewählt werden");
}
//Wir sind nun also mit der DB verbunden, bauen wir nun also ein Query
//Wir wollen alle Informationen über alle Schüler
$query = "select \* from Schueler";
//Senden wir dieses Query nun an die DB und halten die Ressource
if(!$res = mysql\_query($query, $linkID)){
die("Upps, da ist was beim Query schief gelaufen");
}
//jetzt für die Ausgabe eine Tabelle erzeugen, in der wir dann die Daten darstellen
echo "
IDVornameNachnameVorname";
//Jetzt wirds witzig:
//Hinter der Ressource verbergen sich nun alle Datensätze die dem query entsprechen. Das kannst du dir vorstellen wie die Datenbank Ansicht in PHPMyadmin. Die Informationen kommen in Form eines Arrays zurück, wobei jedes Feld den Wert eines Attributes darstellt.
while($temp = mysql\_fetch\_array($res)){
//Diese Schleife läuft nun so oft durch, wie es Datensätze für das Query gibt
//Wir erinnern uns an die Struktur der Tabelle:
//Erstes Attribut: ID ($temp[0])
//Zweites Attribut: Vorname ($temp[1])
//Drittes Attribut: Nachname ($temp[2])
//Da Arrays in PHP beim Index 0 beginnen liegen die Informationen entsprechend
echo "".$temp[0]."".$temp[1]."".$temp[2]."";
}
echo "";
//Nun noch der Sauberkeit halber die DB Verbindung beenden
mysql\_close($linkID);
?\>
Solltest du etwas nicht genau verstehen, frag bitte einfach nach =)
MfG,
Keks