Weil besser als gut!

PHP / Verbindung zur DatenbankInhaltsverzeichnis EinleitungUm mit PHP eine Verbindung zu einer MySQL-Datenbank aufzubauen, gibt es mehrere Möglichkeiten. Die althergebrachte mit der mysql-Bibliothek von PHP wird man wohl am häufigsten finden, ist aber inzwischen aufgrund ihres funktionsorientierten Verhaltens veraltet. Vorzuziehen ist eine objektorientierte Vorgehensweise, am besten mit der neuen mysqli-Klasse von PHP (das i steht für improved). Im folgenden werden Beispiele gegeben. Der traditionelle Weg[...] PHP define('DB_SERVER', 'localhost'); define('DB_USER', 'root'); define('DB_PASSWORD', 'password'); define('DB_NAME', 'database'); $conn = mysql_connect( DB_SERVER, DB_USER, DB_PASSWORD ) or die('Fehler bei der Verbindung: ' . mysql_error() ); $db = mysql_select_db( DB_NAME, $conn ) or die('Fehler bei DB-Auswahl:' . mysql_error() ); mysql_query( "SELECT * FROM table" ); mysql_close( $conn ); ObjektorientiertAuch hier gibt es wieder zwei Möglichkeiten. Entweder man arbeitet direkt mit der Basisklasse, was für kleine Projekte am einfachsten ist. Oder man erstellt seine eigene Klasse, um später wiederkehrende Funktionen auszulagern. Basisklasse[...] PHP define('DB_SERVER', 'localhost'); define('DB_USER', 'root'); define('DB_PASSWORD', 'password'); define('DB_NAME', 'database'); $db = new mysqli( DB_SERVER , DB_USER, DB_PASSWORD, DB_NAME); $db->query( "SELECT * FROM table" ); $db->close(); Mit eigener KlasseDie Klasse myMysqli kann nun später beliebig erweitert werden. PHP define('DB_SERVER', 'localhost'); define('DB_USER', 'root'); define('DB_PASSWORD', 'password'); define('DB_NAME', 'database'); class myMysqli extends mysqli { public function __construct($host, $user, $pass, $db) { parent::__construct($host, $user, $pass, $db); } } $db = new myMysqli( DB_SERVER , DB_USER, DB_PASSWORD, DB_NAME); $db->query( "SELECT * FROM table" ); $db->close();
|
Zahlen & Daten
Publish |