Hallo,
ich habe ein Problem mit dem Login auf meiner Seite und hoffe dass ich es klar schildern kann, damit Ihr mir einen Tip geben könnt.....
Also ich habe erstmal eine User-Klasse, die erstmal nichts Besonderes ist, sondern dessen Objekte nur als sogenannte "Value-Objects" (schönes Wort, gell?) dienen.
Desweiteren habe ich eine UserController-Klasse gebastelt, die diverse Funktionen zur Verwendung der User-Klasse implementiert, beispielsweise eine Funktion showLoginForm() usw.
Und auch eine logsIn() - Funktion, welche erstmal Login-Name und Passwort überprüft und dann "loggedin" in der Session registriert. Am besten poste ich diese Funktion hier mal:
Jetzt muss ich noch dazu sagen, dass im Konstrukter der UserController-Klasse der Session-Wert von "loggedin" ausgelesen werden soll, dieser ist aber immer NULL! Was mache ich verkehrt?
Und im Endeffekt will ich dann natürlich in meinen Scripten so schöne kleine UserController Class - Funktionen wie diese benutzen:
Hat jemand ne Idee, warum $this->loggedin immer NULL ist bzw. warum das Auslesen aus der Session nicht klappt? Macht meine ganze Klassen-Struktur Sinn? Thx für Tips und Anregungen ...
ich habe ein Problem mit dem Login auf meiner Seite und hoffe dass ich es klar schildern kann, damit Ihr mir einen Tip geben könnt.....
Also ich habe erstmal eine User-Klasse, die erstmal nichts Besonderes ist, sondern dessen Objekte nur als sogenannte "Value-Objects" (schönes Wort, gell?) dienen.
Desweiteren habe ich eine UserController-Klasse gebastelt, die diverse Funktionen zur Verwendung der User-Klasse implementiert, beispielsweise eine Funktion showLoginForm() usw.
Und auch eine logsIn() - Funktion, welche erstmal Login-Name und Passwort überprüft und dann "loggedin" in der Session registriert. Am besten poste ich diese Funktion hier mal:
PHP-Code:
function logsIn() {
if (isset($_REQUEST['login']) && isset($_REQUEST['pass'])) {
$db = new Database();
$db->connect();
$db->query("select pass from ".PROJECT_NAME."_user where login='".$_REQUEST['login']."';");
if ($db->getRecord()) $password = $db->getValue('pass');
if ($password == $_REQUEST['pass']) {
$this->loggedin = true;
$loggedin = $this->loggedin;
session_register("loggedin");
}
$db->disconnect();
}
}
PHP-Code:
function UserController() {
session_start();
// $this->user = new User();
$this->loggedin = $_SESSION['loggedin'];
// vardump($this->loggedin);
}
PHP-Code:
function logsOut() {
session_destroy();
}
function isLoggedIn() {
return $this->loggedin;
}
Kommentar