Hi,
ich bin dadran gescheitert per PHP auf meiner Html Seite ein S***** eizubauen welches dafür sorgt, dass ich nur mit einem Benutzernamen und Passwort den Zugang erhalte... Leider hab ich es nicht geschaft eine Textbox so zu verlinken, dass bei Passwort und Benutzername= True ein Link zur nächsten Seite kommt...
Die .htaccess-Datei hat folgenden:
AuthUserFile /kunden/homepages/22/d23295760/.htpasswd
AuthName "Passwortgeschuetzter Bereich: ihredomain.de"
AuthType Basic
require valid-user
Die .htpasswd-Datei hat einen ziemlich simplen Aufbau:
user:aXmiNQVPt4PhE
user2:aXmiNQVPt4PhE
1. .htaccess:
AuthUserFile ../.htpasswd bezeichnet die Position der Passwortdatei (in unserem Fall
.htpasswd). Wohl gemerkt ist, dass nicht die URL der Datei angegeben wird, sondern
der Absolute Pfad. Die Datei muss nicht .htpasswd heißen. Sie kann z.B. auch pass oder
pass.txt heißen
AuthName "..." gibt an wie der zu schützende Bereich heißen soll. Der angegebene
Wert wird in dem Abfragedialog angegeben.
AuthType gibt die Autorinfizierungsmethode an. Die meisten Web-Server unterstützen
nur Basic.
require gibt an wer sich anmelden darf und wer nicht. D.h. wenn require user, dann
kann sich nur der Benutzer mit dem Benutzername user anmelden.
In unserem Fall steht valid-user. Mit valid-user kann sich jeder Benutzer, der in der
Passwortdatei steht anmelden.
2. .htpasswd
Der Aufbau der .htpasswd-Datei ist wahrscheinlich schon klar:
Benutzername:verschlüsseltes Passwort
Zu beachten ist, dass Benutzername und Passwort durch einen Doppelpunkt
voneinander getrennt sind. Wichtig ist, dass keine Leerzeilen vor oder hinter dem
Doppelpunkt sind!
Die Frage ist nun, wie werden die Passwörter verschlüsselt. An dieser Stelle kommt nun
PHP ins Spiel. Hier gibt es den Befehl CRYPT, der unter Verwendung der Standard-DESVerschlüsselungsmethode
von UNIX verschlüsselt.
Zum testen des S*****s hier klicken
<HTML>
<HEAD>
<title>Der CRYPT Befehl</title>
</HEAD>
<BODY>
<p align="center"><u>Beispiel zum verschlüsseln eines
Passworts</u></p>
<br>
<!-- HIER BEGINNT DER PHP TEIL -->
<?
//Generrieren des Formulars
echo "<br><br>Bitte das gewünschte Kennwort
eingeben:<br><br>";
echo "<form action=\"$PHP_SELF\" method=post>";
echo "<INPUT type=text name=pass> ";
echo "<INPUT type=submit name=submit value=submit>";
echo "</form>";
if($pass)
{ //Kontrollieren, ob ein Wert
angegeben wurde
do_crypt($pass); //wenn ja, führe Funktion aus
(weiter unten)
}
function do_crypt($pass)
{
$passC=crypt($pass,yl); //Erzeugen
des Crypts
echo "<br><b>Das Kennwort lautet:</b> $passC";
//Ausgabe des Crypts
}
?>
<!-- HIER ENDET DER PHP TEIL -->
<br><br>
Der CRYPT Befehl verschlüsselt unter Verwendung der Standard-
DES-Verschlüsselungsmethode von UNIX.
</BODY>
</HTML>
Dieses S***** erstellt ein simples HTML-Formular. Die einzige Ausnahme ist, das in
"action" nicht ein S***** steht, sondern "$PHP_SELF". Warum aber? Nun, $PHP_SELF ist
eine Variable, die immer den aktuellen S*****namen zurückgibt. Man kann das S*****
nennen wie man Lust und Laune hat. - es ruft sich immer selber auf.
Zudem habe ich auf verschiedenen Internet Seiten schon geguckt und alles ausprobiert... jeder Menge Müll... oder ich komm damit nicht klar
Hier mal eine Seite auf der ich war und an der ich gescheitert bin, da es nicht so wollte wie ich...