phpbar.de logo

Mailinglisten-Archive

[php] AW: [php] Authentication

[php] AW: [php] Authentication

Peter Petermann webmaster_(at)_cyberfly.net
Fri, 18 Feb 2000 12:37:20 +0100


Hi Ali,

> > Genug geblödelt,
> > was genau möchtest du den wissen?
> mein Anliegen ist, ob es moeglich ist die Basic Authentication
> per .htaccess
> durch eine php/phplib unterstuetzte Authentication zu ersetzen.
ja, ist es, PHP ist in der lage die Authentication zu handlen

> Wenn ja wie
> oder wo bekomme ich weitere Infos.
http://www.php3.de/manual/html/features.http-auth.html
beschreibt die möglichkeiten von PHP damit umzugehen

Ich vermute du willst das ganze über eine Datenbank machen...
 ich gehe davon aus, das
 in der datei "verbindung-zur-datenbank.inc.php3" eine Verbindung
 zu einer mySQL Datenbank aufgebaut wurde.
des weiteren geh ich davon aus, das du einen Table hast,
der sich User nennt, (das passwort steht da der einfachheithalber Plain text
drin,
die Verschlüsselung sollte ja kein Problem zu adden sein :)

der Table User ist wie folgt aufgebaut
+-------------------------+
|Username   |   passwd    |
+-----------+-------------+
|foo        |   bar       |
+-------------------------+
in diesem Beispiel haben wir nun nur den User foo, dessen Passwort ist bar,
wenn nun jemand auf die Seite kommt,
wird er aufgefordert den Username und das Passwort einzugeben...
Dann wird der Username & Das Passwort in der der Datenbank gesucht,
Verglichen,
ob das Passwort auch zu dem Username gehört,
Und falls richtig, soll der Inhalt der seite angezeigt werden, um es ein
wenig zu vereinfachen,
haben wir den inhalt ebenfalls in einer include sitzen: inhalt.inc.php3
Falls nicht, wird ein 401 geschickt, mit der Nachricht, das der User keinen
Zugriff hat,
das ganze kann dann so aussehen

Sollte eigentlich Funktionieren,
wobei ich es nicht getestet habe :)

Gruss Peter "[DiSAStA]" Petermann
webmaster_(at)_cyberfly.net
http://www.cyberfly.net

<?php

include("verbindung-zur-datenbank.inc.php3");

if(isset($PHP_AUTH_USER)):
	$Result = mysql_query("SELECT * FROM User WHERE Username =
'$PHP_AUTH_USER'");
	if(mysql_num_rows($Result) > 0):
		$passwort = $mysql_result($Result, 0 ,"passwd");
		if($passwort == $PHP_AUTH_PW):
			include("inhalt.inc.php3)
			exit;
		endif;
	endif;
endif;
Header("WWW-Authenticate: Basic realm=\"My Realm\"");
Header("HTTP/1.0 401 Unauthorized");
echo "Du darfst diese Seite leider nicht besuchen...\n";
?>



php::bar PHP Wiki   -   Listenarchive