Hi Leute
Ich glaub ich seh vor lauter Bäumen den Wald nicht mehr. Aber jetzt nach ner Stunde herumdoktorieren hab ich mich entschlossen, euch mit meinem Trivialproblem zu belästigen. Vermutlich werde ich ein *Kopf@Tisch*-Erlebnis haben, aber irgendwie blick ich grad nicht durch.
Mein Script (simples Login-Script):
Die Ausgabe der Echos von Zeile 19 und Zeile 30
Ich verstehe nicht, warum das "Ich bin in der Funktion login()" noch vor dem eigentlichen Funktionsaufruf kommt.
Hier noch der Klassenaufruf:
Was übersehe ich? Ich blicks grad echt nicht -.-"
Bin für jeden Hinweis auf meine Kurzsichtigkeit dankbar.
Gruss Igäl
Edit:
Achja... das Eigentliche Problem beim einloggen ist, dass wenn ich auf den Submit-Button drücke und mich einloggen will, loggt es mich ein und gleich wieder aus. Ich hab keine Ahnung was hier abgeht
Ich glaub ich seh vor lauter Bäumen den Wald nicht mehr. Aber jetzt nach ner Stunde herumdoktorieren hab ich mich entschlossen, euch mit meinem Trivialproblem zu belästigen. Vermutlich werde ich ein *Kopf@Tisch*-Erlebnis haben, aber irgendwie blick ich grad nicht durch.
Mein Script (simples Login-Script):
PHP-Code:
<?
class Login {
var $notice_output = "";
/******************************************************************************************************/
/******************************************************************************************************/
function show_login($smarty) {
$smarty->assign("form_action", "index.php?mid=3");
$this->login_handler(&$smarty);
return ("login.tmpl.html");
}
/******************************************************************************************************/
/******************************************************************************************************/
function login_handler($smarty) {
if($_SESSION['UserID'] != 0) {
$this->logout();
}else{
echo "Ich bin in der Funktion login_handler überhalb von \$this->login()
";
$this->login();
}
$smarty->assign("notice_output", $this->notice_output);
}
/******************************************************************************************************/
/******************************************************************************************************/
/**# Es folgen die Unterfunktionen von login_handler #**/
/******************************************************************************************************/
/******************************************************************************************************/
function login() {
echo "Ich bin in der Funktion login()
";
if(isset($_POST['form_login_submit'])) {
$log_name = utf8_decode($_POST['form_login_nickname']);
$verify_login = Mysql::db_num_data("UsrID, UsrPrename, UsrEMail, UsrOpenMail", "users", "UsrNickname='".$_POST['form_login_nickname']."' AND UsrPw='".md5($_POST['form_login_pass'])."'");
if($verify_login > 0) {
$userdata = $this->get_userdata($_POST['form_login_nickname'], $_POST['form_login_pass']);
$_SESSION['UserID'] = $userdata['UsrID'];
$_SESSION['UserPrename'] = $userdata['UsrPrename'];
$_SESSION['UserNickname'] = $_POST['form_login_nickname'];
$_SESSION['UserPass'] = md5($_POST['form_login_pass']);
$_SESSION['UserEMail'] = $userdata['UsrEMail'];
$_SESSION['UserOpenMail'] = $userdata['UsrOpenMail'];
if($_POST['form_login_autologin']) {
//Cookies setzen
$value = $userdata['UsrID']."|".$userdata['UsrPrename']."|";
$value .= $_POST['form_login_nickname']."|".md5($_POST['form_login_pass'])."|";
$value .= $userdata['UsrEMail']."|".$userdata['UsrOpenMail'];
$expire = 3600*24*30+time();
setcookie("AutoLogin", $value, $expire);
}
$this->notice_output .= "Login erfolgriich - <a href=\"index.php?mid=1\">[b]wiiter[/b]</a>
";
}else{
$this->notice_output .= "Loginname oder Passwort falsch
<a href=\"index.php?mid=3\">[b]Namal probiere[/b]</a>
";
}
}
}
/******************************************************************************************************/
/******************************************************************************************************/
function logout() {
session_destroy();
setcookie("AutoLogin", "", time() - 3600);
$this->notice_output .= "Erfolgriich uusgloggt - <a href=\"index.php?mid=1\">[b]wiiter[/b]</a>
";
}
/******************************************************************************************************/
/******************************************************************************************************/
function get_userdata($name, $pass) {
$userdata_ = Mysql::db_select_data("UsrID, UsrPrename, UsrEMail, UsrOpenMail", "users", "UsrNickname='".$name."' AND UsrPw='".md5($pass)."'");
$userdata = Mysql::db_fetch_data($userdata_);
return $userdata;
}
/******************************************************************************************************/
/******************************************************************************************************/
}
Code:
Ich bin in der Funktion login() Ich bin in der Funktion login_handler überhalb von $this->login() Ich bin in der Funktion login()
Hier noch der Klassenaufruf:
PHP-Code:
case 3: include_once("modules/login/Login.class.php");
$login = new Login;
$show_login = $login->show_login(&$smarty);
$show_login = $path_prefix."modules/login/templates/".$show_login;
$smarty->assign("show_site", $show_login);
break;
Bin für jeden Hinweis auf meine Kurzsichtigkeit dankbar.
Gruss Igäl
Edit:
Achja... das Eigentliche Problem beim einloggen ist, dass wenn ich auf den Submit-Button drücke und mich einloggen will, loggt es mich ein und gleich wieder aus. Ich hab keine Ahnung was hier abgeht

Kommentar