PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP für Fortgeschrittene und Experten (http://www.selfphp.de/forum/forumdisplay.php?f=13)
-   -   HTTP Authentifikation (http://www.selfphp.de/forum/showthread.php?t=1144)

hatbanger 03.04.2002 13:38:12

HTTP Authentifikation
 
Hallo Forum,


Folgender Programmcode:

// Authentifizieren
function authorize() {
global $PHP_AUTH_USER;
global $PHP_AUTH_PW;
global $db;
if(!isset($PHP_AUTH_USER)) {
header("WWW-Authenticate: Basic realm="MyRealm"");
header('HTTP/1.0 401 Unauthorized');
return false;
exit; }
else {
$sql_query = "SELECT * FROM users WHERE name='$PHP_AUTH_USER' AND password=PASSWORD('$PHP_AUTH_PW')";
$sql_result = mysql_query($sql_query, $db);
if (mysql_numrows($sql_result) == 0) {
header("WWW-Authenticate: Basic realm="MyRealm"");
header('HTTP/1.0 401 Unauthorized');
return false;
exit; }
else {
return true; }
}
}

Folgendes Problem:
Nachdem man als registrierter User erkannt wurde, sind ja die beiden Variablen $PHP_AUTH_USER und $PHP_AUTH_PW gesetzt (d.h. es findet keine Passwortabfrage mehr statt, bis man alle Browserinstanzen geschlossen hat). Wie kann man diese beiden Variablen wieder leeren ?
Mit $PHP_AUTH_USER = ""; hab ich es versucht, aber das nützt nichts, beim nächsten Seitenaufruf sind die Variablen wieder gesetzt.
Geht das überhaupt oder muß man immer den Umweg gehen, die Browserfenster zu schließen, um sich sicher abzumelden ?

PS: Dieser Code ist gedacht für ein Intranet, bei dem ALLE User MSIE verwenden. Könnte ja sein, daß bei Netscape dieses Problem überhaupt nicht auftritt, aber das würde mir nicht helfen.

Danke für eure Hilfe

Benjamin :-)


Alle Zeitangaben in WEZ +2. Es ist jetzt 14:39:40 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.