Probleme mit mysql Erweiterung
Hallo zusammen,
Ich verwende die in PHP 5 neu hinzugekommene mysqli Erweiterung um mit der Datenbank zu kommunzieren. Hier der kurze Code der zugehörigen Datei, xmysqli.php, die ich leicht abgewandelt aus einem Lehrbuch entnommen habe: PHP-Code:
PHP-Code:
PHP-Code:
Auf meinem Entwicklungssystem klappte das immer ohne Probleme. Nun erhielt ich aber folgende Fehlermeldung: Code:
Fatal error: Class 'mysqli' not found in /www/htdocs/w0055c8a/xmysqli.php on line 3 Dies habe ich einfach so gemacht, dass ich bei allen Befehlen (z.B: "mysqli_num_rows" oder "mysqli_errno") das "i" weggelassen habe. (Also z.B. "mysql_num_rows"). Im obigen Code habe ich also nur "extends mysql" eingetragen. Die Klasse heißt weiterhin "xmysqli" (was ja egal sein müsste). Meines Wissens nach ist dies der einzige Unterschied beim verwenden der beiden Erweiterungen. Jedenfalls war ich dann doch sehr überrascht, als nachdem Ändern folgende Fehlermeldung erschien: Code:
Fatal error: Class 'mysql' not found in /www/htdocs/w0055c8a/xmysqli.php on line 3 "Das Schlüsselwort extends bedeutet das die Klasse die dahinter angegeben wird vorhanden sein muss und erweitert wird. Ich habe Ihren Code einmal beispielhaft geändert, was nur zum demonstrieren gedacht ist, aber im Grunde keine sinnvolle Sequenz darstellt:" PHP-Code:
Ist vielleicht jemand von euch in der Lage, den obigen Code (der Datei xmysqli.php) so umzuschreiben, dass es wieder möglich ist mit PHP-Code:
Ich bin verzweifelt und kenne mich leider auch mit Klassen und Objektorientierung nicht wirklich aus. Ich habe keine Idee, was ich nun tun muss, damit meine Skripte die Datei xmysqli.php wieder verwenden können. Vielen Dank für jede Hilfe Stefan |
AW: Probleme mit mysql Erweiterung
Für MySQLi gibt es anscheinend eine vordefinierte Klasse mysqli, mit der Datenbankabfragen gemacht werden können. Für MySQL existiert meines Wissen nach keine entsprechende vordefinierte Klasse. Du wirst dir also eine entsprechende Datenbankklasse selbst schreiben müssen. Wie so etwas zum Beispiel geht, kannst du hier nachlesen: http://tut.php-q.net/mysql-class.html
|
AW: Probleme mit mysql Erweiterung
Vielen Dank.
Ich habe inzwischen verstanden, wo das Problem liegt. Da ich mich mangelnden Wissens außer Lage sehe selbst eine Datenbankklasse zu erstellen werde ich einfach Abstand von der Objektorientierung nehmen und statt dessen die prozessorientierte Vorgehensweise wählen, die ich wenistens nachvollziehen kann. Die Vorteile einer Datenbankklasse sind mir eh nicht nicht klar. Außer dass dabei weniger Schreibarbeit anfällt, sehe ich keine Vorteile. Und das kann ich auch mit Funktionen erreichen. Allerdings leuchtet es mir nicht im geringesten ein, dass selbt moderne Server (mit php5 und mysql 4.1) nicht mit der mysqli Erweiterung kompiliert werden, wo nun schon solche Datenbankfunktionalitäten seit php5 zur Verfügung stehen. Das verstehe wer will. Ich nicht. |
Alle Zeitangaben in WEZ +2. Es ist jetzt 06:40:27 Uhr. |
Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.