Zitat:
Zitat von henry444
Diese Parameter sind im superglobalen Array $_SERVER leider nicht vorhanden.
|
Die tauchen erst auf, wenn der Browser sie auch mitschickt. Dafür muss er aber vorher einen WWW-Authenticate-Header vom Server erhalten. Beispiel für ein einfaches Anmeldeskript:
PHP-Code:
<?php
if (
isset($_SERVER["PHP_AUTH_USER"], $_SERVER["PHP_AUTH_PW"])
&& $_SERVER["PHP_AUTH_USER"] == "Klaus"
&& $_SERVER["PHP_AUTH_PW"] == "12ab34"
) {
// Benutzer authentifiziert, Dokument ausgeben
}
else {
// "401 Unauthorized" Status schicken und Basic Authentication verlangen:
header("WWW-Authenticate: Basic realm='Gesicherter Bereich'", true, 401);
// Abbruch: Fehlerdokument ausgeben
}
?>
Der Browser wird beim ersten Aufruf anzeigen, dass eine Anmeldung für den Bereich "Gesicherter Bereich" erforderlich ist. Wenn man sich dann als Benutzer "Klaus" mit Passwort "12ab34" anmeldet, wird das Dokument angezeigt. Bricht man die Anmeldung ab, wird das Fehlerdokument ausgegeben.
Gruß,
Amica