Formular im htaccess-Bereich ruiniert User
Koeffi
- php
Hallo Leute!
Ich habe einen mit .htaccess geschützten Bereich auf meiner Website. In diesem Bereich befindet sich ein Formular, mit method="post", welches ich mit PHP auswerte.
Dabei habe ich folgendes Problem... ich hole mir den derzeitigen eingeloggten User über
$user = $REMOTE_USER;
Klappt auch wunderbar auf allen Seiten, nur auf den Ausgabeseiten des Formulares scheint es so, als wäre niemand mehr eingeloggt.
Mit der Methode GET klappt das alles, aber die will ich nicht benutzen...
Danke für eure Hilfe!
Koeffi
Hallo,
$user = $REMOTE_USER;
also nutzt Du immer noch die Konfiguration register_globas=On. Mache Dein Script portabel und nutze stattdessen $_ENV['REMOTE_USER']
!
Klappt auch wunderbar auf allen Seiten, nur auf den Ausgabeseiten des Formulares scheint es so, als wäre niemand mehr eingeloggt. Mit der Methode GET klappt das alles, aber die will ich nicht benutzen...
Das ist mir zwar jetzt weniger verständlich, aber Du kannst den User in einem Eingabefeld (<input type="hidden" ~>) durch PHP einfügen lassen. Dabei ist es natürlich nicht sehr gescheit nur mit <?php echo $_ENV['REMOTE_USER'] ?>
zu arbeiten. Du solltest Dir dafür eine "Verschlüsselung" überlegen! Denn sonst kann jeder etwas versiertere Nutzer des Formulars seinen Schabernack treiben.
Gruß aus Berlin!
eddi
Danke für deine Hilfe Eddi!
Das mit dem Hidden-Feld hatte ich auch schon überlegt und das ich da eine Verschlüsselung brauche ist mir auch klar.
Ich frage mich allerdings, warum das nicht einfach so funktioniert... ich meine alle Seiten liegen doch in dem geschützten Ordner, warum ist dann auf einmal der User weg...
Verständnisfrage:
Was ist der Unterschied zwischen $REMOTE_USER; und $_ENV['REMOTE_USER']!?
Re:
Was ist der Unterschied zwischen $REMOTE_USER; und $_ENV['REMOTE_USER']!?
$REMOTE_USER
ist nur dann im Script definiert, wenn die Konfiguration PHPs mit register_globals=On vorgenommen wurde. In diesem Fall (und nur in diesem Fall) ergibt die Prüfung ($REMOTE_USER===$_ENV['REMOTE_USER']);
"wahr".
Gruß aus Berlin!
eddi