Umleitung eines Benutzers in eigenes Verzeichnis
bibaben
- php
Hallo liebe Selfhtml-Gemeind,
ich versuche Benutzer die sich via .htaccess authentifizieren in ein Verzeichnis weiterzuleiten, das genau wie der jeweilige Benutzer heisst.
Wenn ein Benutzer auf www.meineseite.de/download/ geht, muss er sich für dieses Verzeichnis Authentifizieren und soll dann weitergeleitet werden auf
www.meineseite.de/download/benutzer
Strato verhindert scheinbar redirect befehle in der .htaccess.
Leider verstehe ich ledglich html und nicht wirklich php, deswegen
Mein gegenwärtiger Code sieht so aus:
<?php
$folder = $_SERVER['REMOTE_USER'];
header("Location: ../download/$folder/");
?>
Das Ergebnis ist allerdings folgende Ausgabe:
Warning: Cannot modify header information - headers already sent by (output started at /mnt/web8/52/52/51658052/htdocs/meineseite/download/index.php:9) in /mnt/web8/52/52/51658052/htdocs/meineseite/download/index.php on line 13
Line 13 ist die header-Zeile des obigen Scripts.
Wo liegt mein Fehler? Muss ich die Variable vorher über ein CGIscript generieren? Oder gibt es andere einfachere Möglichkeiten das Problem zu lösen?
Vielen Dank für eure Hilfe
Bibaben
Hi,
$folder = $_SERVER['REMOTE_USER'];
header("Location: ../download/$folder/");
1. Ein Location-Header erfordert die Angabe eines vollstaendigen URL, also aendere das bitte.
Warning: Cannot modify header information - headers already sent
Line 13 ist die header-Zeile des obigen Scripts.
Wo liegt mein Fehler?
Darin, dass du dich offenbar kein bisschen informiert hast - so gut wie ueberall, wo du dich zu dieser Meldung informieren wuerdest, und auch im PHP-Manual bzgl. der Funktion header, findest du die deutliche Aussage, dass vor dem Aufruf header noch keinerlei Ausgaben an den Client erfolgt sein duerfen.
MfG ChrisB
Hallo, danke für die schnelle Antwort
Darin, dass du dich offenbar kein bisschen informiert hast - so gut wie ueberall, wo du dich zu dieser Meldung informieren wuerdest, und auch im PHP-Manual bzgl. der Funktion header, findest du die deutliche Aussage, dass vor dem Aufruf header noch keinerlei Ausgaben an den Client erfolgt sein duerfen.
MfG ChrisB
Soweit war ich beim lesen der einschlägigen Seiten auch gekommen. Dass aber auch Leerzeichen und -zeilen im Code so problematisch sind hab ich nicht bedacht.
Vielen Dank für die Hilfe.
Beste Grüße
Bibaben
Hallo
... dass vor dem Aufruf header noch keinerlei Ausgaben an den Client erfolgt sein duerfen.
Soweit war ich beim lesen der einschlägigen Seiten auch gekommen. Dass aber auch Leerzeichen und -zeilen im Code so problematisch sind hab ich nicht bedacht.
Nur zur Klarstellung: Leerzeichen, Leerzeilen, Zeilenumbrüche, wasauchimmer innerhalb des PHP-Codes sind nicht problematisch, solange es zu keiner Ausgabe an den Browser kommt. Nur jene Zeichen (egal, welche), die dem Browser als Teil des HTML-Quelltextes zugestellt werden, lösen den "Headers already sent"-Fehler aus. Die können natürlich auch im PHP-Code stehen.
Tschö, Auge