Hallo,
habe ein kleines Problem mit der Weiterleitung nach dem Login.
Der Code sieht so aus:
Wenn ich mich nun einlogge, bekomme ich die Meldung: Cannot modify header information - headers already sent by (output started at .../index.php:40) in /.../login.php on line 12
Habe dann natürlich gegooglet und herausgefunden, dass vor dem Header bspw. keine Ausgabe in Form von Echo oder HTML befehlen oder Leerzeichen sein darf.
Habe es nach Leerzeichen geprüft und nichts gefunden.
Dann gesehen, dass ich ganz am Anfang echo "Zugriff verweigert"; ausgebe.
Also müsste mein Header-Befehl auch vor diesem Php-Block stehen, bin ich soweit richtig? Gesagt getan - habe ein neuen PHP befehl geöffnet und den login Teil rauskopiert und eingefügt; Header nach ganz oben verschoben. Somit hatte ich kein Echo befehl über dem Header aber dennoch bekam ich die Meldung Headers already sent[...].
Habe ich irgendetwas übersehen? Bitte macht mich nicht gleich fertig nach dem Motto "Google ist dein Freund" oder "Benutz die SuFu". Das habe ich alles getan und komme immer noch nicht weiter, sonst würde ich mir gewiss nicht die Mühe machen und einen Thread erstellen.
Mfg
habe ein kleines Problem mit der Weiterleitung nach dem Login.
Der Code sieht so aus:
PHP-Code:
<?php if (!defined('IN_SITE')) { echo "Zugriff verweigert!"; die(); } ?>
<?php
if($db->isUserLoggedIn() === TRUE) {
echo "Du bist bereits eingeloggt! - <a href='index.php?section=logout' alt='Ausloggen'>(ausloggen)</a>";
} else {
if(isset($_POST['einloggen'])) {
$mail = $_POST['email'];
$passwort = sha1($_POST['passwort']);
if($db->login($mail, $passwort) === TRUE) {
header("Location: index.php?section=loginerfolg");
} else {
echo "Einloggen fehlgeschlagen!";
}
}
?>
Habe dann natürlich gegooglet und herausgefunden, dass vor dem Header bspw. keine Ausgabe in Form von Echo oder HTML befehlen oder Leerzeichen sein darf.
Habe es nach Leerzeichen geprüft und nichts gefunden.
Dann gesehen, dass ich ganz am Anfang echo "Zugriff verweigert"; ausgebe.
Also müsste mein Header-Befehl auch vor diesem Php-Block stehen, bin ich soweit richtig? Gesagt getan - habe ein neuen PHP befehl geöffnet und den login Teil rauskopiert und eingefügt; Header nach ganz oben verschoben. Somit hatte ich kein Echo befehl über dem Header aber dennoch bekam ich die Meldung Headers already sent[...].
Habe ich irgendetwas übersehen? Bitte macht mich nicht gleich fertig nach dem Motto "Google ist dein Freund" oder "Benutz die SuFu". Das habe ich alles getan und komme immer noch nicht weiter, sonst würde ich mir gewiss nicht die Mühe machen und einen Thread erstellen.
Mfg
Kommentar