PHP-Einfach.de
  • PHP Tutorial
  • MySQL Tutorial
  • Für Fortgeschrittene
  • Webhosting
  • Forum

Datenbankverbindung aufbauen

16. Dezember 2019
  1. Home
  2. »
  3. MySQL Tutorial
  4. »
  5. Datenbankverbindung aufbauen

In PHP existieren drei Varianten um auf eine MySQL Datenbank zuzugreifen. Die älteste nutzt die MySQL Erweiterung , die aber seit PHP 5.5.0 als veraltet (deprecated) markiert wurde und in PHP 7 komplett entfernt wurde. Die zweite Möglichkeit ist mittels der MySQL Improved Extension (MySQLi) und die letzte Möglichkeit ist mittels PHP Data Objects (PDO) .

PDO ist dabei das aktuellste Interface um auf Datenbank zuzugreifen und besitzt gegenüber MySQLi einige neue nette Funktionen und den großen Vorteil, dass es auch mit anderen Datenbanksystemen zusammenarbeiten kann. In diesem Tutorial fokussieren wir uns ausschließlich auf PDO. Sucht ihr nach Scripts im Internet, dann findet ihr oft noch welche die die veraltete MySQL Erweiterung nutzen oder die MySQLi nutzen. Lasst euch davon nicht verwirren. Der Unterschied zwischen der originalen MySQL Erweiterung, MySQLi und PDO ist nicht so sonderlich groß.

Falls ihr dennoch an der original MySQL-Erweiterung oder an der MySQLi-Erweiterung interessiert seid, beispielsweise um Code den ihr im Internet gefunden habt zu verstehen, gibt es noch den Crashkurs MySQL, Crashkurs MySQLi und Crashkurs PDO. Diese listen die wichtigsten Funktionen auf ohne viel Erklärung.

Mit der Datenbank verbinden

Bevor ihr Anfragen an die Datenbank stellen könnt, müsst hier zuerst eine Verbindung aufbauen. Es empfiehlt sich, diesen Code immer am Anfang eurer Scripts stehen zu haben. Das Verbinden zur MySQL Datenbank mittels PDO funktioniert mittels der Klasse PDO . Sobald die Datenbankverbindung aufgebaut ist, könnt ihr beliebig viele Anfragen an die Datenbank senden. Die Verbindung wird auch automatisch geschlossen, sobald eurer Script beendet wurde.

Datenbankverbindung mittels PDO:

1
2
3
<?php
$pdo = new PDO('mysql:host=localhost;dbname=test', 'username', 'password');
?>

Als host gebt ihr den Hostnamen der Datenbank an. Oftmals ist dies localhost. Bei gewissen Hostinganbietern kann dieser aber abweichen. Nähere Informationen dazu findet ihr meistens auf der Website eures Hosters. Danach folgt der Datenbankname, in diesem Fall test. Diese Datenbank haben wir zuvor per phpMyAdmin erstellt. Die letzten zwei Parameter sind der Benutzername und das Passwort. Hier könnt ihr lokal entweder den Benutzer 'root' verwenden mit einem leeren Passwort '' oder die Zugangsdaten die ihr im vorherigen Schritt erstellt hattet.

Umlaute und UTF-8 Zeichensatz

Umlaute wie ä, ö, oder ü, und deren korrekte Speicherung und Darstellung, sind leider stets ein leidiges Thema. Damit man möglichst wenig Stress mit dieser Problematik hat, empfehle ich die konsequent den UTF-8 Zeichensatz zu verwenden. Diesen solltet ihr sowohl für eure Dateien, als auch für das ausgegebene HTML nutzen. Ebenfalls sollten Text-Spalten in euren MySQL-Tabellen auf UTF-8 setzen (später mehr dazu).

Meistens wird bei der  MySQL-Verbindung bereits der passende Zeichensatz ausgewählt. Solltet dies aufgrund einer unpassenden PHP / MySQL-Konfiguration nicht der Fall sein, könnt ihr wie folgt beim Verbindungsaufbau den gewünschten Zeichensatz auswählen:

1
2
3
<?php
$pdo = new PDO('mysql:host=localhost;dbname=test;charset=utf8', 'username', 'password');
?>

Durch die Angabe von charset hinter dbname wählt ihr den gewünschten Zeichensatz. Sofern ihr nicht UTF-8 verwendet, müsst ihr dort den für euch passenden Zeichensatz auswählen.

Autor: Nils Reimers
Zurück: Tabellen verwalten mit phpMyAdmin
Weiter: Simple Datenabfrage per SELECT

MySQL Tutorial

  • MySQL installieren und starten
  • phpMyAdmin
  • Verbindung aufbauen
  • Simple Datenabfrage
  • Komplexere Datenabfrage
  • Prepared Statements
  • Daten einfügen
  • Daten aktualisieren
  • Daten löschen
  • Gefundene Einträge zählen
  • DATE-Datenbankspalten
  • Datum- und Zeitfunktionen
  • MySQL Fehlermeldungen
  • Datenbankverbindung schließen
  • JOIN
  • Indizes
  • Normalformen
  • Fremdschlüssel
  • Übersicht SQL-Befehle
  • Crashkurs MySQL
  • Crashkurs MySQLi
  • Crashkurs PDO
Mit freundlicher Unterstützung von:
  • Punkt191 Werbeagentur

Hoster – Geringste Ausfallzeit

  1. webgo Ø 0 Min.
  2. netcup Ø 0 Min.
  3. All-Inkl.com Ø 3 Min.
  4. Linevast Ø 3 Min.
  5. checkdomain Ø 5 Min.
  6. dogado Ø 6 Min.
  7. Strato Ø 8 Min.
  8. manitu Ø 9 Min.
  9. 1&1 Ø 10 Min.
  10. DomainFactory Ø 14 Min.
» Mehr erfahren

Impressum | Datenschutz | Auf PHP-Einfach.de werben

© PHP-Einfach.de 2003 - 2025

Cookie-Zustimmung verwalten
Um dir ein optimales Erlebnis zu bieten, verwenden wir Technologien wie Cookies, um Geräteinformationen zu speichern und/oder darauf zuzugreifen. Wenn du diesen Technologien zustimmst, können wir Daten wie das Surfverhalten oder eindeutige IDs auf dieser Website verarbeiten. Wenn du deine Zustimmung nicht erteilst oder zurückziehst, können bestimmte Merkmale und Funktionen beeinträchtigt werden.
Funktional Immer aktiv
Die technische Speicherung oder der Zugang ist unbedingt erforderlich für den rechtmäßigen Zweck, die Nutzung eines bestimmten Dienstes zu ermöglichen, der vom Teilnehmer oder Nutzer ausdrücklich gewünscht wird, oder für den alleinigen Zweck, die Übertragung einer Nachricht über ein elektronisches Kommunikationsnetz durchzuführen.
Vorlieben
Die technische Speicherung oder der Zugriff ist für den rechtmäßigen Zweck der Speicherung von Präferenzen erforderlich, die nicht vom Abonnenten oder Benutzer angefordert wurden.
Statistiken
Die technische Speicherung oder der Zugriff, der ausschließlich zu statistischen Zwecken erfolgt. Die technische Speicherung oder der Zugriff, der ausschließlich zu anonymen statistischen Zwecken verwendet wird. Ohne eine Vorladung, die freiwillige Zustimmung deines Internetdienstanbieters oder zusätzliche Aufzeichnungen von Dritten können die zu diesem Zweck gespeicherten oder abgerufenen Informationen allein in der Regel nicht dazu verwendet werden, dich zu identifizieren.
Marketing
Die technische Speicherung oder der Zugriff ist erforderlich, um Nutzerprofile zu erstellen, um Werbung zu versenden oder um den Nutzer auf einer Website oder über mehrere Websites hinweg zu ähnlichen Marketingzwecken zu verfolgen.
Optionen verwalten Dienste verwalten Anbieter verwalten Lese mehr über diese Zwecke
Einstellungen ansehen
{title} {title} {title}