Passwortabfrage von Dominik Pütz - Erweiterte Version


Hallo!

Ich habe mich bemüht, das Script übersichtlich und einfach zu halten, und diese Erklärung so ausführlich wie möglich zu machen, damit möglichst jeder in der Lage ist, meine Passwortabfrage zu benutzen.

Nun folgt eine kurze Erklärung der einzelnen Dateien, die Sie ja bereits heruntergeladen haben.
Grundsätzlich sind alle Stellen, an denen Sie Änderungen vornehmen müssen/können, durch Kommentare markiert. Änderungen an anderer Stelle sollten Sie nur vornehmen, wenn Sie genau wissen was Sie tun!
Diese Dateien müssen sich alle im selben Verzeichnis befinden. Den Rest Ihres geschützten Bereiches können Sie auch in Unterordnern unterbringen.

Entpacken Sie den Inhalt dieses Archivs nicht in den gleichen Ordner wie die BASIS-Version, bzw. entpacken Sie nur die Dateien, die Sie benötigen!

Einbauanleitung2.html
   
Diese Datei, die Sie gerade lesen! Bitte nicht Online stellen, denn da hat sie keinen Sinn!

pruefen.js
   
Mit dieser Datei ersetzen Sie die pruefen.js der BASIS-Version. wenn Sie über erfolgreiche und/oder missglückte Logins per Email informiert werden wollen. Sollten Sie das nicht vorhaben, dann brauchen Sie diese Datei nicht zu ersetzen!
Ich habe gute Erfahrungen mit http://www.formmailer.com gemacht. Da dieser Dienst für private und gemeinnützige Zwecke kostenlos ist, habe ich diese Funktion daran ausgerichtet.
Natürlich dürfen Sie auch Ihr eigenes CGI oder einen anderen Anbieter nutzen. Das wichtigste Kriterium ist jedoch, dass die Ergebnisseite festgelegt werden kann, denn das ist entweder die erste Seite des geschützten Bereiches oder die Fehlerseite.
Die Identitätsnummer des Formulars geben Sie bitte auf keinen Fall in dieser Datei an (nur die Variabel definieren), da sie ausgelesen werden kann und jemand sich so sein eigenes Login konstruieren kann!

Wenn Sie formmailer.com nutzen, dann können Sie bei Formmailer den folgenden Text als Mailinhalt konfigurieren:
{subject}

{tag}, {datum} - {uhr}

Login: {login}
Kennwort: {kennwort}
Browser: {browser}
UserAgent: {browser2}
{cookies}
Betriebssystem: {bsystem}
Bildschirmauflösung: {bild}
Nutzbare Fläche: {nutzbar}


Formular-URL: {&HTTP_REFERER}
Browser-ID: {&HTTP_USER_AGENT}
IP-Adresse: {&REMOTE_ADDR}
Remote-Host: {&REMOTE_HOST}
Zeit: {&NOW}

gast$test.js
   
Ersetzt die User-Dateien! Nutzen Sie diese Datei nur, wenn Sie über erfolgreiche Logins informiert werden möchten!
Geben Sie hier die Identitätsnummer des Formulars an. In dem dazugehörenden Formular müssen Sie dann als Ergebnisseite die komplette URL der ersten Seite Ihres geschützten Bereiches (in unserem Beispiel eingang.html) angeben.

abbruch.js
   
Ersetzt die Datei abbruch.js! Nutzen Sie diese Datei nur, wenn Sie über fehlgeschlagene Loginversuche informiert werden möchten!
Geben Sie hier die Identitätsnummer des Formulars an. In dem dazugehörenden Formular müssen Sie dann als Ergebnisseite die komplette URL von fehler.html angeben.

cookie.js
   
Diese Datei enthält die Befehle für die Cookieverwaltung.

Sie müssen nun sowohl in pruefen.html als auch im HEAD-Bereich jeder Seite Ihres geschützten Bereiches den folgenden Aufruf hinzufügen:
<script type="text/javascript" src="Cookie.js"></script>
Sollten Sie Ihre Passwortabfrage nachrüsten und keine Lust haben, alle Dateien anzupassen, dann können Sie auch den Inhalt dieser Datei (nicht den Aufruf) in Head.js hineinkopieren. Sie müssen allerdings auch im Head-Bereich von pruefen.html entweder o.g. Aufruf eingeben, oder auch den Inhalt hinein kopieren (innerhalb eines Scriptbereiches).
Die Cookiebenutzung setzt voraus, daß sich alle HTML-Dateien im gleichen Ordner befinden! Wenn Sie mit Unterordnern arbeiten, dann können Sie in diesen Ordnern nicht auf die Cookies zugreifen!

In gast$test.js geben Sie den folgenden Befehl ein:
CookieSetzen("ident",document.pwd.login.value,1000*60*30);
Dadurch wird ein Cookie mit dem Namen ident gesetzt, welches als Wert den Login (document.pwd.login.value) trägt und für 30 Minuten (1000 Millisekunden mal 60 Sekunden mal 30 Minuten) gültig bleibt.
Nun geben Sie in Head.js die folgenden Zeilen ein:
cookie = CookieLesen("ident")
if(cookie == undefined)
 {
  if(document.images)
   self.location.replace('cookie.html');
  else
   self.location.href = 'cookie.html';
 }
else
 {
  CookieSetzen("ident",cookie,1000*60*30);
 }
Sollte das Cookie nicht existieren oder ungültig sein, wird der Besucher zu cookie.html weitergeleitet.
Wenn alles OK ist, dann steht in der Variabel cookie der Wert des Cookies und das Cookie wird erneut mit einer Gültigkeit von 30 Minuten geschrieben.

Wollen Sie eine persönliche Begrüßung verwenden, dann können Sie z.B. in gast%test.js auch den echten Namen des Benutzers angeben (anstelle von document.pwd.login.value den Namen in Anführungszeichen, z.B. "Max Mustermann") und mit den folgenden Zeilen eine Begrüßung ausgeben:
<script type="text/javascript"><!--
 document.write('Hallo ' + cookie);
//--></script>

cookie.html
   
Wird angezeigt, wenn Cookies deaktiviert sind oder die Gültigkeitsdauer überschritten wurde (30 Minuten Inaktivität).
Es wäre nett, wenn Sie meine Arbeit dahingehend entlohnen, daß Sie an irgendeiner Stelle Ihrer Seite einen Link zu meiner Seite (http://www.dominikpuetz.de) setzen. Das kann ein Textlink sein oder alternativ auch mein Banner:

15,3 KByte
Möchten Sie meinen Banner auf Ihrer Homepage einbinden? Kein Problem! Verwenden Sie einfach den folgenden Quelltext:
<!-- Start dominikpuetz.de -->
<a href="http://www.dominikpuetz.de" target=_blank><img src="http://www.dominikpuetz.de/banner.gif" border=0 height=60 width=468 alt="dominikpuetz.de - n&uuml;tzliche Javascripte"></a>
<!-- Ende dominikpuetz.de -->


Wenn Sie Probleme beim Einbau haben, oder Hilfe bei der Verwirklichung irgendwelcher Extras benötigen, dann werde ich versuchen, Ihnen zu helfen. Allerdings setze ich dafür voraus, daß Sie einen Link zu meiner Seite eingebaut haben.
Nutzen Sie bitte mein Support-Formular!
Ich freue mich natürlich auch jederzeit über Feedback in Form von Anregungen, Kritik, Wünschen, ...

Viel Erfolg mit meinem Script, und daß es uns gelingt das Internet ein wenig sicherer zu machen!!!

Gruß,
Dominik Pütz