Hallo,
ich schreibe gerade ein kleines Registrierungsformular für einen Chat.
Dabei wollte ich so eine Sicherheitsanzeige reinbasteln, welche zwar funktioniert, aber total fehlerhaft.. xD
JS function
html:
södele, was ich möchte ist:
Wenn man ´5 buchstaben eingegeben hat, soll es im img tag level-1.gif angezeigt werden.
Wen man 5 buchstaben und 2 zahlen eingegeben hat, soll im img tag level-2.gif stehen.
wenn man 5 buchstaben und 3 zahlen eingegeben hat, soll im img tag level-3.gif stehen...
Bei mir ist aber so, dass das bild aufeinmal von 3 zu 2 wieder wechselt obwohl ich ein noch sichereres passwort eingetippt habe..
Vielen Dank
edit: Kaum hat man geschrieben, so findet man den Fehler...
Mein jetziges Problem ist, wenn man das passwort aus dem feld wieder rauslöscht, aber man davor ein ganz sicheres passwort eingetippt hat, so bleibt das bild vom ganz sicheren passwort.. Ich kann mir nicht erklären warum, denn beim OnKeyPress ist ja auch die backspace taste dabei, somit sollte er beim löschen auch prüfen... hmmm
Wäre sehr dankbar für hilfe.
Ambience
ich schreibe gerade ein kleines Registrierungsformular für einen Chat.
Dabei wollte ich so eine Sicherheitsanzeige reinbasteln, welche zwar funktioniert, aber total fehlerhaft.. xD
JS function
PHP-Code:
function setLevel()
{
var zahlen_regexp = /[a-z][0-9]{1,}/i;
var zahlen_regexp2 = /[a-z][0-9]{2,}/i;
if (document.getElementById('password').value.length >= 4 && zahlen_regexp.test(document.getElementById('password').value))
{
document.getElementById('level').src = 'images/level-2.gif';
}
else if (document.getElementById('password').value.length >= 4 && zahlen_regexp2.test(document.getElementById('password').value))
{
document.getElementById('level').src = 'images/level-2.gif';
}
else if (document.getElementById('password').value.length >= 4)
{
document.getElementById('level').src = 'images/level-1.gif';
}
}
PHP-Code:
<tr>
<td><b>Passwort:</b></td>
<td><input type="password" name="password" size="30" maxlength="40" id="password" onKeyPress="setLevel();" /></td>
</tr>
<tr>
<td>Sicherheitsstufe:</td>
<td><img src="http://www.php.de/forum/images/level-0.gif" id="level" /></td>
</tr>
Wenn man ´5 buchstaben eingegeben hat, soll es im img tag level-1.gif angezeigt werden.
Wen man 5 buchstaben und 2 zahlen eingegeben hat, soll im img tag level-2.gif stehen.
wenn man 5 buchstaben und 3 zahlen eingegeben hat, soll im img tag level-3.gif stehen...
Bei mir ist aber so, dass das bild aufeinmal von 3 zu 2 wieder wechselt obwohl ich ein noch sichereres passwort eingetippt habe..
Vielen Dank
edit: Kaum hat man geschrieben, so findet man den Fehler...
PHP-Code:
function setLevel()
{
var zahlen_regexp = /[a-z][0-9]{2,}/i;
var zahlen_regexp2 = /[a-z][0-9]{1,}/i;
if (document.getElementById('password').value.length >= 4 && zahlen_regexp.test(document.getElementById('password').value))
{
document.getElementById('level').src = 'images/level-3.gif';
}
else if (document.getElementById('password').value.length >= 4 && zahlen_regexp2.test(document.getElementById('password').value))
{
document.getElementById('level').src = 'images/level-2.gif';
}
else if (document.getElementById('password').value.length >= 4)
{
document.getElementById('level').src = 'images/level-1.gif';
}
}
Wäre sehr dankbar für hilfe.
Ambience
Kommentar