Hallo,
Ich habe eine Klasse, mit der ich meine MySQL Abfragen ausführe.
Nun habe ich eine neue Klasse, mit der ich Sessions in die Datenbank eintragen will, mithilfe der MySQL Klasse. Nur wenn ich das mache, sagt er mir
Fatal error: Call to a member function on a non-object in /www/htdocs/.../class_session.php on line 39
Wenn ich jetzt mit Vererbung mache, funktioniert es soweit, nur dann gibt er mir ein SQL error.
Die MySQL Klasse wird aber vor der Session Klasse aufgerufen. Muss ich die MySQL Klasse in der Session Klasse aufrufen? Oder wie löse ich das am geschicktesten.
Die MySQL Klasse benötigt dazu noch die Datenbank daten.
Hier mal das Beispiel:
<?php
class db {
var $server = "";
var $user = "";
var $password = "";
var $database = "";
function db($server,$user,&$password,$database) {
.....
}
......
<?PHP
class session {
var $user_name;
var $user_id;
var $user_pw;
var $user_rights=0;
var $session_name;
var $session_id;
function session ($session_name, $session_id)
{
...
$proof_session = $db->query("SELECT userid, sid FROM sessions WHERE userid='$this->user_id' AND sid='$this->session_id'"
...
}
...
require("./class_mysql.php"
$db = new db($sqlhost,$sqluser,$sqlpassword,$sqldb);
require("./class_session.php"
$session = new session(session_name(), session_id());
Ich weiß, dass das Falsch ist, aber ich weiß auch nicht, wie ich das anders machen soll.