ERLEDIGT
NEIN
NEIN
ANTWORTEN
4
4
ZUGRIFFE
396
396
EMPFEHLEN
-
15.11.11 17:39 #1
Hallo,
ich habe eine Klasse mit folgender Login Funktion:
Leider wird die User ID nicht in der Session gespeichert. Was mache ich falsch?PHP-Code:function login($email, $password){
$value = "COUNT(USER_ID)";
$sql = "SELECT $value
FROM user
WHERE EMAIL='".htmlentities($email)."' && PWD='".htmlentities(md5($password))."'";
$query = mysql_query($sql);
$count = mysql_fetch_row($query);
if($count[0] > 0){
$value = "*";
$query = mysql_query($sql);
while($user = mysql_fetch_object($query)){
$user_id = $user->USER_ID;
$user_status = $user->STATUS;
}
if($user_status == 1){
// ERROR : USER NOCH NICHT AKTIVIERT
}else{
$_SESSION['user_id'] = $user_id;
header('Location: home.tpl');
}
}else{
header('Location: signup.tpl');
}
}
Gruß
-
item: Du musst nicht das $sql 2 mal hintereinander mit mysql_query() öffnen. Einmal reicht.
item: Ist die Session gestartet?
item: Kommt der Code in den entsprechenden Schleifen-Abschnitt wo die userid der Session zugewiesen wird?---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
15.11.11 17:59 #3okDu musst nicht das $sql 2 mal hintereinander mit mysql_query() öffnen. Einmal reicht.

ja in der index.phpIst die Session gestartet?
Was meinst du damit?Kommt der Code in den entsprechenden Schleifen-Abschnitt wo die userid der Session zugewiesen wird?
-
Bist du sicher, dass dein Test in die folgende Schleife rein kommt?
Ansonsten prüf das mal mit einem echo()
PHP-Code:}else{
$_SESSION['user_id'] = $user_id;
header('Location: home.tpl');
}
---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
15.11.11 18:41 #5
Hm, also wenn ich es so schreibe dann klappt's... nur jetzt hab ich wieder 2 queries drin :/
PHP-Code:function login($email, $password){
$value = "COUNT(USER_ID)";
$sql = "SELECT $value
FROM user
WHERE EMAIL='".htmlentities($email)."' && PWD='".htmlentities(md5($password))."'";
$query = mysql_query($sql);
$count = mysql_fetch_row($query);
if($count[0] > 0){
$value = "*";
$sql = "SELECT $value
FROM user
WHERE EMAIL='".htmlentities($email)."' && PWD='".htmlentities(md5($password))."'";
$query = mysql_query($sql);
while($user = mysql_fetch_object($query)){
$user_id = $user->USER_ID;
$user_status = $user->STATUS;
}
if($user_status == 1){
// ERROR : USER NOCH NICHT AKTIVIERT
}else{
$_SESSION['user_id'] = $user_id;
}
}else{
header('Location: signup.tpl');
}
}
Ähnliche Themen
-
Session-Variablen werden nicht gespeichert
Von Paspirgilis im Forum PHPAntworten: 7Letzter Beitrag: 06.08.09, 12:38 -
Session Variablen werden nicht gespeichert
Von retta im Forum PHPAntworten: 2Letzter Beitrag: 06.05.09, 11:30 -
Session-Variablen werden im IE nicht gespeichert
Von buddymaster im Forum PHPAntworten: 18Letzter Beitrag: 30.11.08, 20:04 -
PHP Session Variablen werden nicht Gespeichert
Von Dj Mike im Forum PHPAntworten: 1Letzter Beitrag: 25.10.05, 14:24 -
Session wird nicht gespeichert
Von h-brock im Forum PHPAntworten: 1Letzter Beitrag: 09.02.04, 22:09





Zitieren

Login






[PHP][Snippet] Array zu XML konvertieren