Hat immer langweile...
Hey,
sitze zur Zeit an einem Projekt für den Informatikunterricht.
Es handelt sich um Portal, welches beim Login auf die Profilseite weiterleitet.
Es kommt beim absenden des Login Formulars zum allseits bekannten Fehler:
Es wird auch an der Stelle ein header location aufgerufen, aber wie kann ich diesen Fehler verhindern. Klar, dadurch dass es vor dem verändern zu einer Ausgabe kommt,
da header location aber in einer funktion innerhalb einer Klasse aufgerufen wird, kommt es zwangsläufig dort irgenwann zu Ausgaben. Die Klassen werden im <head> Bereich der Seite included.
Wie kann ich das Problem am besten umgehen?
Meiner Meinung nach sollte dies zu lösen sein, wenn ich nur header location aufrufe, bevor die Klassen includiert werden, aber wie?
Das ist der Teil der funktion, die nach dem Login aufgerufen wird. Wie kann ich es nun schaffen, dass die header funktion keine Probleme verursacht.
Bissl umständlich formuliert, aber ich hoff es klappt. Einfach fragen, welchen Codeteil ihr sehen wollt.
Liebe Grüße
taffrot
sitze zur Zeit an einem Projekt für den Informatikunterricht.
Es handelt sich um Portal, welches beim Login auf die Profilseite weiterleitet.
Es kommt beim absenden des Login Formulars zum allseits bekannten Fehler:
Code:
Warning: Cannot modify header information - headers already sent
Es wird auch an der Stelle ein header location aufgerufen, aber wie kann ich diesen Fehler verhindern. Klar, dadurch dass es vor dem verändern zu einer Ausgabe kommt,
da header location aber in einer funktion innerhalb einer Klasse aufgerufen wird, kommt es zwangsläufig dort irgenwann zu Ausgaben. Die Klassen werden im <head> Bereich der Seite included.
Wie kann ich das Problem am besten umgehen?
Meiner Meinung nach sollte dies zu lösen sein, wenn ich nur header location aufrufe, bevor die Klassen includiert werden, aber wie?
PHP:
//Session Variabeln setzen
$_SESSION['userid'] = $data['ID'];
$_SESSION['username'] = $data['Username'];
$_SESSION['email'] = $data['Email'];
$_SESSION['group'] = $data['Benutzergruppe'];
header('Location: profil.php');
} else {
header('Location: login.php?errmsg=1');
}
Das ist der Teil der funktion, die nach dem Login aufgerufen wird. Wie kann ich es nun schaffen, dass die header funktion keine Probleme verursacht.
Bissl umständlich formuliert, aber ich hoff es klappt. Einfach fragen, welchen Codeteil ihr sehen wollt.
Liebe Grüße
taffrot