logo

Extra Block Types (EBT) - Neue Erfahrung im Layout Builder❗

Extra Block Types (EBT) - gestylte, anpassbare Blocktypen: Diashows, Registerkarten, Karten, Akkordeons und viele andere. Eingebaute Einstellungen für Hintergrund, DOM Box, Javascript Plugins. Erleben Sie die Zukunft der Layouterstellung schon heute.

Demo EBT-Module EBT-Module herunterladen

❗Extra Absatztypen (EPT) - Erfahrung mit neuen Absätzen

Extra Paragraph Types (EPT) - analoger, auf Absätzen basierender Satz von Modulen.

Demo EPT-Module EPT-Module herunterladen

Scroll

PHP Lektionen – Lektion 3.1 – Arbeiten mit der MySQL-Datenbank. Tabellen erstellen.

26/05/2025, by Ivan

In der letzten Lektion haben wir eine Verbindung zur Datenbank hergestellt. In dieser Lektion werden wir Tabellen für unsere zukünftige Website erstellen. Zuerst fügen wir im simpleCMS-Klasse den Namen der benötigten Datenbank hinzu:

class simpleCMS {  // Steuerungsklasse

  public $host = 'localhost'; // Variablen für die DB-Verbindung
  public $username = 'root';
  public $password = '';
  public $db = 'testDB';

Nun müssen wir diese Datenbank auf unserem MySQL-Server anlegen. Wenn Sie Denwer verwenden, steht Ihnen phpMyAdmin zur Verfügung, das in Denwer enthalten ist. Gehen Sie über diesen Link zu phpMyAdmin und erstellen Sie eine neue Datenbank:

PhpMyAdmin

Nachdem wir die Einstellungen eingetragen und die Datenbank erstellt haben, passen wir die Verbindung zum MySQL-Server in PHP an. Ändern wir die Verbindungs-Methode wie folgt:

  public function connectDB() {
	$link = mysql_connect($this->host, $this->username, $this->password); // Verbindung zum MySQL-Server herstellen
	if (!$link) {
		die('Verbindungsfehler: ' . mysql_error());
	}    
	mysql_select_db($this->db) or die("Datenbank nicht gefunden. " . mysql_error()); // Datenbank auswählen
	return $link;
  }

Wenn alles klappt, werden keine Meldungen ausgegeben. Nun erstellen wir die Tabelle. Dafür fügen wir die Methode buildDB() hinzu, die wir direkt im connectDB()-Methode aufrufen.

  public function connectDB() {
	$link = mysql_connect($this->host, $this->username, $this->password); // Verbindung zum MySQL-Server herstellen
	if (!$link) {
		die('Verbindungsfehler: ' . mysql_error());
	}    
	mysql_select_db($this->db) or die("Datenbank nicht gefunden. " . mysql_error()); // Datenbank auswählen
        $this->buildDB(); // Methode innerhalb der Klasse aufrufen
	return $link;
  }
  
  public function buildDB(){
  
  }

So können wir bei jeder Verbindung in der Methode buildDB() prüfen, ob alle Tabellen vorhanden sind. Dafür schicken wir eine Anfrage an die DB:

  public function buildDB(){
    $sql = 'CREATE TABLE IF NOT EXISTS messages ( 
			  title		VARCHAR(150),
			  bodytext	TEXT,
			  created		VARCHAR(100)
			)';
			
    return mysql_query($sql);    
  }

Sehen wir uns an, wie das funktioniert:

Zuerst speichern wir die SQL-Anfrage als String in einer Variablen, die wir dann an die Funktion mysql_query übergeben, welche die Anfrage an die DB schickt.

Unsere SQL-Anweisung beginnt mit dem Operator CREATE TABLE – Tabelle erstellen. Danach prüfen wir mit IF NOT EXISTS, ob die Tabelle bereits existiert, hier die Tabelle messages.

In Klammern hinter dem Tabellennamen stehen die Felder, die mit der Tabelle angelegt werden, in unserem Fall die Felder title, bodytext und created. Nach dem Namen jedes Feldes folgt die Angabe des Datentyps. VARCHAR(150) ist eine Zeichenkette mit maximal 150 Zeichen, TEXT ist ein Textfeld, das ganze Artikel speichern kann.

Speichern Sie nun die Datei simpleCMS.php und rufen Sie index.php auf, dann wird die Tabelle messages angelegt.

Wir werden diese Tabelle in der nächsten Lektion nutzen. Wenn Sie Fragen oder Fehler haben, schreiben Sie sie gerne in die Kommentare.