Mailinglisten-Archive |
Norbert Pfeiffer wrote:
> Hi,
>
> meine Vermutung, dass nur bei fehlgeschlagenem Login
> das Error-Dokument vom Server gesendet wird war leider
> falsch. Er schickt es bei jedem Aufruf mit. Ergo wird
> es auch sofort geparst und header(); ueberschreibt
> den 401-Status. Deshalb gibt es kein Login, sondern
> gleich eine Weiterleitung.
>
> Schade ... :-((
hast du auch mal hier geschaut:
http://www.php.net/features.http-auth
da siehst du wo du dein header() Befehle unterbringen musst um kein
meta-tag verwenden zu müssen ...
zu beachten ist das die gesamte Autorisierung (Abfrage und Eingabe der
Daten) immer nur per HTTP-Header abläuft!
ein Inhalt kommt erst bei erfolgreichem Login oder beim Abbruch beim
Client an.
if ( ! isset( $_SERVER['PHP_AUTH_USER'] ) )
{
header( 'WWW-Authenticate: Basic realm="My Realm"' );
header( 'HTTP/1.0 401 Unauthorized' );
include '401.template'; // oder header( 'Location: ...' )
exit;
}
elseif ( uebruefeLogin( $_SERVER['PHP_AUTH_USER'],
$_SERVER['PHP_AUTH_PW'] ) )
{
include 'geschützterinhalt.template'; // oder sonstwas
}
else
{
include 'falschespasswort.template'; // oder sonstwas
}
--
Sebastian Mendel
www.sebastianmendel.de www.warzonez.de www.tekkno4u.de www.nofetish.com
www.sf.net/projects/phpdatetime www.sf.net/projects/phptimesheet
php::bar PHP Wiki - Listenarchive