Hallo!
- Ich habe ein Formular mit einem einzeiligen Passwort-Eingabefeld
und einem Button.- Der Button ist per default inaktiv (disabled)
warum? Javascript kann man abschalten, bringt also 0 Sicherheit.
- Wird nun etwas in das Eingabefeld getippt, so soll Buchstabe für
Buchstabe überprüft werden, ob die Eingabe mit dem erwarteten Passwort übereinstimmt - ist dem so, so wird der Button aktiv!
Das ist denkbar ungünstig. Dazu müßtrest Du vorab den Benutzernamen an das PHP_Script schicken, und das Passwort Serverseitig md5-verschlüsselt in eine Javascript-Variable schreiben, genau das Gegenteil von dem was Du eigentlich vorhattest, abver andes geht es nicht. Diese Seite, die jetzt das verschlüsselte Passwort des Users enthält, enthält aich das PAsswort fld, udn jetzt kannstD u sicher mit Javascript irgendwie bei jedem Buchstaben prüfen, ob der Md5-String der Eingabe mit dem in PHP-geberierten MD5 String übereinstimmt.
Ich halte das ganze aber für sehr umständlich und unsicher, zumal du erst den Benutzernamen an den Server übermitteln mußt.
Ein vernünftiger Weg wäre es, direkt eingegebenen username und password an das PHP-Script zu schicken, und dort in MySQL Username und zugehöriges Passwort vergleichen.
- Ich möchte in jdem Fall vermeiden, dass man das Passwort durch Anzeige des Quellcodes lesen kann - dafür benutze ich u.a. die PHP Funktion md5().
Daher sollte man sowas serverseitig machen!
Javascript bietet mir also die Möglichkeit während der Eingabe gewisse Checks durchzuführen, während mit PHP gewisse Verschlüsselungsmöglichkeiten bietet - beides würde ich gerne unter einen Hut bringen!
Warum mußt Du unbedingt während der Eingabe prüfen? Das bringt _gar_nichts_, da Du erst nach vollständiger Eingabe sinnvoll prüfen kannst. Daher würde ich die vollständige Eingabe direkt an den Server schicken und da prüfen, vor allem da man Javascript einfach auschalten kann und dann ist Deine Authentifizierung unwirksam.
Suche mal im Archiv nach "PHP Login" (wenns denn wieder funktioniert)
Grüße
Andreas