Hallo Leute,
habe mir gerade eine MySQL Klasse aus einem Tutorial angeschaut und getestet.
Leider bekomme ich keine Ausgabe und auch keine Fehlermeldung wenn ich eine Abfrage ausführe....siehe ganz unten im Code.
Vielleicht liegt es ja an register_globals? Hat jemand ne Idee? Auf herkömmliche weise gehts einwandfrei.
Gruss
habe mir gerade eine MySQL Klasse aus einem Tutorial angeschaut und getestet.
Leider bekomme ich keine Ausgabe und auch keine Fehlermeldung wenn ich eine Abfrage ausführe....siehe ganz unten im Code.
Vielleicht liegt es ja an register_globals? Hat jemand ne Idee? Auf herkömmliche weise gehts einwandfrei.
PHP:
<?php
##### Hier folgen die Einstellungen der Verbindungen
define("DB_STANDARD", 1);
# Verbindung 'STANDARD'
$mySQL_settings[1]['host'] = 'localhost';
$mySQL_settings[1]['user'] = 'root';
$mySQL_settings[1]['pswd'] = '';
$mySQL_settings[1]['dbname'] = 'cms';
####################
class mySQL {
var $connected = FALSE;
var $host;
var $user;
var $pswd;
var $dbname;
var $verbindung;
var $sql_query;
var $query_counter;
function mySQL($ID = DB_STANDARD) {
global $mySQL_settings;
$this->host = $mySQL_settings[$ID]['host'];
$this->user = $mySQL_settings[$ID]['user'];
$this->pswd = $mySQL_settings[$ID]['pswd'];
$this->dbname = $mySQL_settings[$ID]['dbname'];
$this->verbindung = @mysql_connect($this->host, $this->user, $this->pswd);
if ($this->verbindung === FALSE) {
$this->error("CONN.OPEN");
}
if (@mysql_select_db($this->dbname, $this->verbindung) === FALSE) {
$this->error("DB.SELECT");
} else {
$this->connected = TRUE;
}
}
// wenn das Skript nicht mit PHP5 ausgeführt wird, folgende Funktion einfach löschen!
function __destruct() {
if (!$this->connected) {
$this->error("NO CONN");
} else {
if (@mysql_close($this->verbindung) === FALSE) {
$this->error("CONN.CLOSE");
}
}
}
function DBQueries() {
if (!$this->connected) {
$this->error("NO CONN");
} else {
return $this->query_counter;
}
}
function DrawDBQueries() {
if (!$this->connected) {
$this->error("NO CONN");
} else {
if ($this->DBQueries == 1) {
$text = "Es war 1 mySQL-Abfrage nötig";
} else {
$text = "Es waren ".$this->DBQueries." mySQL Abfragen nötig";
}
}
return $text;
}
function query($sql) {
if (!$this->connected) {
$this->error("NO CONN");
} else {
$this->sql_query = $sql;
$this->query_counter++;
$result = @mysql_query($this->sql_query, $this->verbindung);
if ($result === FALSE) {
$this->error("QUERY FAILED");
} else {
return $result;
}
}
}
function select($sql, $anzahl = NULL) {
if (!$this->connected) {
$this->error("NO CONN");
} else {
$result = $this->query($sql);
if ($result !== FALSE) {
$anzahl1 = @mysql_num_rows($result);
$anzahl = $anzahl1;
for($i = 0; $i < $anzahl; $i++) {
$array[$i] = @mysql_fetch_object($result);
}
}
}
return $array;
}
function error($error_type) {
switch ($error_type) {
case 'CONN.OPEN':
$text = "Beim Öffnen der Verbindung ist ein Fehler aufgetreten";
break;
case 'CONN.CLOSE':
$text = "Beim Schließen der Verbindung ist ein Fehler aufgetreten";
break;
case 'NO CONN':
$text = "Die angeforderte Aktion konnte nicht durchgeführt werden, da keine Verbindung zur Datenbank besteht!";
break;
case 'DB.SELECT':
$text = "Beim Auswählen der Datenbank ist ein Fehle aufgetreten. Ev. ist die Datenbank nicht vorhanden";
break;
case 'QUERY FAILED':
$text = "Während folgender Abfrage ist ein Fehler aufgetreten:\n\n".$this->sql_query;
break;
default:
$text = "Es ist folgender, unbekannter Fehler aufgetreten: ".$error_type;
}
if ($this->connected) {
$text .= "\n\nmySQL meldet:\nFehler-Nummer: ".@mysql_errno($this->verbindung)."\nFehler-Beschreibung: ".@mysql_error($this->verbindung);
}
echo $text."\n";
}
}
$sql = new mySQL(); // neue Verbindung zu DB_TEST
$daten = $sql->select("SELECT * FROM config"); // einfache Abfrage
echo $daten->plz;
?>
Gruss