Also ich habe schon die Suchfunktion bemüht und einiges über Referenzen gelesen und die Fehler soweit ausgemerzt, allerdings habe ich nun ein kleines Problem, bei den Klassen.
Ich habe ein hübsches kleines Websiteskript, eine Klasse für meine Datenbank und eine Klasse die meinen ganzen Loginkram enthält.
In der Login-Klasse würde ich nun gern auch das DB-Objekt aus dem Skript nutzen. Das ganze sieht folgendermaßen aus.
index.php
class_mysmc.inc.php
Das Problem was ich nun habe ist, das die Variable $ergebnis in der Methode Login nichts enthält. Sie ist leer, was heißt das das Referenzkonstrukt irgendwo einen Fehler hat. Ich dachte eigentlich die Theorie die sich hinter den Referenzen verbirgt verstanden zu haben, allerdings hab ich nun schon so einiges probiert, aber finde den Fehler einfach nicht.
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in [...]\inc\class_mysmc.inc.php on line 110 Diese Fehlermeldung bekomme ich zurück, sobald die if-Schleife erreicht ist. Eigentlich ja auch logisch, da mysql_num_rows nichts übergeben bekommt, aber das warum versteh ich nicht.
Ich habe ein hübsches kleines Websiteskript, eine Klasse für meine Datenbank und eine Klasse die meinen ganzen Loginkram enthält.
In der Login-Klasse würde ich nun gern auch das DB-Objekt aus dem Skript nutzen. Das ganze sieht folgendermaßen aus.
index.php
PHP-Code:
<?php
require_once "inc/class_mydbc.inc.php"; //Bibliothek für Datenbankfunktionen
require_once "inc/class_mysmc.inc.php"; //Bibliothek für Loginfuntkionen
$myDB = new myDBC($cfg['db']);
$mySM = new mySMC($myDB);
....
?>
PHP-Code:
class mySMC
{
var $_myDB
function mySMC(&$ref_myDB)
{
....
$this->_myDB = &$ref_myDB;
....
}
function login($username, $passwort, $md5 = FALSE)
{
$sql = "SELECT
user_id,
user_accstatus,
session_ip,
session_failed_logins,
(NOW()-session_last_action) as session_idle
FROM
".TAB_PREFIX."_user,
".TAB_PREFIX."_session
WHERE
user_name = '".$username."'
AND user_password = '".$password."'
AND user_id = session_user_id";
$ergebnis = $this->_myDB->query($sql);
if(mysql_num_rows($ergebnis) != 1)
{
....
}
}
....
}
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in [...]\inc\class_mysmc.inc.php on line 110 Diese Fehlermeldung bekomme ich zurück, sobald die if-Schleife erreicht ist. Eigentlich ja auch logisch, da mysql_num_rows nichts übergeben bekommt, aber das warum versteh ich nicht.
Kommentar