HTML, CSS, PHP, MySQL

html-php.de

HTML & CSS Stylesheets Referenz JavaScript PHP MySQL Sonstiges Gästebuch Inhalt Impressum

[ MySQL-Datenbanken ] [ Feldtypen ] [ PHPMyAdmin ] [ Datenbank-Zugriff ]

MySQL-Datenbanken

In einer Datenbank können Sie beliebige Daten speichern und Verwalten. Jede Datenbank kann mehrere Tabellen enthalten, die wiederum mehrere Spalten hat. So können Sie z.B. Adressen, Buch, DVD´s oder ein Gästebuch verwalten. Wie Sie auf MySQL-Datenbanken möcht ich anhand eines Gästebuches hier Schritt für Schritt erklären. Hier findex Sie ein Demo dieses Gästebuches und können zum nachvollziehen hier Downloaden.
Zuerst überlegen wir uns, welche Daten wir brauchen:
Zuerst einmal die Daten des Users, der sich ins Gästebuche einträgt. also Name, eMail-Adresse und Homepage und zur Sicherheit die IP-Adresse. Dann noch das Datum und Uhrzeit sowie das wichtigste, der Beitrag.
Ausserdem legen wir noch eine zweite Tabelle für den Spamschutz mit den Feldern Datum, Uhrzeit und Spamcode an.

Feldtypen

Anders als bei PHP spielen bei Datenbanken die Feldtypen eine Rolle, so können Sie in einem Feld für Fließkommazahlen kein Text speichern.
Folgende Feldtypen sind möglich:

INTganzzahlige Zahlen zwischen -2,1 bis +2,1 Mio
VARCHAR(x)max. 255 beliebige Zeichen (statt x muss die Anzahl der Zeichen angegeben werden
DATETIMEDatum und Uhrzeit
TEXTText bis zu 65000 Zeichen.
DOUBLEFließkommazahl

Dieses sind die wichtigsten Typen, es gibt aber noch mehr, auf die ich (noch) nicht näher eingehen möchte.

Die Strukture unserer Datenbank wird wie folgt aussehen:

Datenbank: GASTBUCH
    Tabelle: Beitrag
FeldnameFeldtypErläuterung
IDINT AUTO_INCREMENT PRIMARY KEYID-Nr. des Eintrages (wird automatisch vergeben)
NameVARCHAR(30)Name des Users
eMailVARCHAR(70)eMail-Adresse
HPVARCHAR(70)Homepage des Users
IPVARCHAR(16)IP des Users
ZeitINT(11)Datum und Uhrzeit des Eintrages
BeitragTEXTDer Beitrag des Users
KommentarTEXTKommentar des Gastbuchinhabers

   Tabelle: Spam
FeldnameFeldtypErläuterung
IDINT AUTO_INCREMENT PRIMARY KEYID-Nr. des Eintrages (wird automatisch vergeben)
CodeVARCHAR(6)Spam-Code
ZeitINT(11)Datum und Uhrzeit

PHPMyAdmin

In der Regel bekommen Sie den Datenbankname von Ihrem Webspace-Anbieter. Mit dem Programm PHPMyAdmin können Sie dann die Administration übernehmen. Sie haben hiermit die Möglichkeit Tabellen anzulegen, Auswertungen vorzunehmen, oder Daten einzugeben, bzw. zu bearbeiten.

Zugriff auf die Datenbank mit PHP

Um mit PHP auf eine Datenbank zuzugreifen, benötigen Sie folgende Angaben, die Sie in der Regel von Ihrem Webspace-Anbieter bekommen.

Serverz.B. localhost
Benutzernamez.B. Benutzer
Passwortz.B. Password
Datenbanknamez.B. Databases

Am besten speichern Sie diese Daten in eine Datei, z.B. zugriff.php in ein durch .htaccess geschütztes Unterverzeichniss, und binden diese über ein include in Ihren PHP-Dateien ein, da dieser Code-Schnipsel evtl. mehrmals in diversen PHP-Dateien benötigen.

  <?php
   define("MYSQL_HOST",     "localhost");  
   define("MYSQL_USER",     "benutzer");
   define("MYSQL_PASS",     "passwort");
   define("MYSQL_DATABASE", "Gastbuch");
  ?>

Um Kontakt mit der Datenbank aufzunehmen, benutzen Sie die Funktion mysql_connect(), die eine Variable eines Zeigers der Datenbank zurückgibt, die später für den Zugriff benötigt wird. Daher speichern Sie diese am besten in der Variablen $dz für Datenbankzeiger.
Sobald die verbindung zum Server steht, benutzen Sie die Funktion mysql_select_db(), um die Datenbank zu öffnen. Ist eine Funktion nicht erfolgreich, kann das Script mit OR die('Fehlertext') abgebrochen werden. Fehlt diese Funktion, werden folgende Anweisungen ausgeführt.
Zum schluss wird wird die Datenbank mit mysql_close() geschlossen. Das ganze sieht dann so aus:

  <?php
    include 'inc/zugriff.php';
    $dz = @mysql_connect(MYSQL_HOST,MYSQL_USER,MYSQL_PASS) 
      OR die('Verbindung fehlgeschlagen');
    mysql_select_db(MYSQL_DATABASES) 
      OR die('Konnte Datenbank nicht benutzen');
  ?>
  ... hier folgt weiterer Code ...
  <?php
    @mysql_close($dz);
  ?>  

back top next