Hallo,
ich habe ein Problem mit dem Konstruktor. Obwohl ich die Klassenfelder im Konstruktor initialisiere, werden sie in einer anderen Funktion nicht erkannt:
Code:
class ConnectionToDB {
var $host;
var $user;
var $password;
var $database;
function ConnectionToDB () {
$host = "*";
$user = "*";
$password = "*";
$database = "*";
}
function open() {
$connection = mysql_connect($host, $user, $password) or die(mysql_error());
mysql_select_db($database) or die(mysql_error ());
return $connection;
}
function close($connection) {
$closed = mysql_close($connection) or die(mysql_error());
return $closed;
}
}
Das Problem ist, dass die Funktion open() die Werte der Variablen nicht kennt, die im Konstruktor intitialisiert werden. Ich kann mir aber nicht erklären, warum das so ist. die Variablen wurden doch auf Klassenebene vereinbart. (Ich bin mir bewusst, dass mein Konstruktor so nicht viel Sinn macht, die Werte sind ja nicht flexibel. Aber im Moment reicht mir das, es wäre ja schnell geändert.)