Fehler bei Passwort-Script

ts230

Gesperrt
Hallo erstmal,
ich habe ein sehr großes Problem mit meinem Script,was zwei Passwörter vergleicht und die Länge.Leider läuft das Script immer noch nicht!Hier mein Script:
HTML:
<script type="text/javascript">
function toggledisplay(divId){
if(document.getElementById(divId).style.display=='none')
document.getElementById(divId).style.display='block';
else document.getElementById(divId).style.display='none';}
</script>
<script type="JavaScript">
function PWDV() {
//############################var#######################
var SUBMITBTN = document.GetElementById('SUBMIT')//#####
var feld1 = document.GetElementById('Kennwort')//#######
var feld2 = document.GetElementById('Kennwort2')//######
var anzeige = document.GetElementbyId('st001')//########
//############################var#######################
if(feld1.value == feld2.value){
//fuehrt Befehle in der Schleife aus,wenn PWD1 und PWD2 den gleichen Wert haben
toogledisplay('lampe1');
document.GetElementById('_OK_').style.background-color =rgb(0, 255, 0);
document.GetElementById('hiddentxt').value=false;
window.status="Deine eingegebenen Passwörter stimmen Überein"//zeigt Status-Text
SUBMITBTN.disabled=false;//das Formular kann abgesendet werden!
//###################################laenge-Vergleich#################################
if(feld1.value&&feld2.value == 8){
anzeige.style.backgroung-image url('img/bars/8.gif');
SUBMITBTN.disabled=false;//das Formular kann gesendet werden
toogledisplay('pwdalert');
}
else if(feld1.value&&feld2.value<8){
anzeige.style.backgroung-image url('img/bars/7.gif');
SUBMITBTN.disabled=true;//das Formular kann nicht gesendet werden
}
else if(feld1.value&&feld2.value>12){
anzeige.style.backgroung-image url('img/bars/12.gif');
SUBMITBTN.disabled=false;//das Formular kann gesendet werden
}
else{
error = confirm("Achtung!\n\rEs ist ein Fehler aufgetreten\n\rder Fehler-Code ist folgender:\n\rERROR 2001:D\n\rdie Passwortlänge konnte nicht Ermittelt werden.\n\rFehler an Adressem:\n\r0x00000000FF1\n\r0x00000000FDA\n\r0x00000000FAA\n\r0x00000000F3C\n\r0x00000000E9F\n\rForfahren?");
if (error == false)
  history.back();
else if(error == true)
window.ststus="##-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-######-#-#-#-#-#-#-##"
}
}
else{
document.GetElementById('hiddentxt').value=true;
window.status="deine eingegebenen Passwörter Stimmen nicht überein"
SUBMITBTN.disabled=true;
}
return true;
}
</script>
Das Formular ist Folgendes:
HTML:
<link rel="stylesheet" type="text/css" href="phpts1/1.css" title="Screen"  media="screen"/>
<html>
<head>
<form action="register.php" name="registrieren" id="registrieren">
Dein Username*:<input type="text" size="45" maxlength="55" id="Nickname" name="Nickname"></input><br>
Dein Passwort*:<input type="password" size="45"  id="Kennwort" name="Kennwort" onkeyup="PWDV();"></input><br>
Dein Passwort(Widerholung)*:<input type="password" size="45"  id="Kennwort2" name="Kennwort2" onkeyup="PWDV();" ></input><br>
Dein Vorname:<input type="text" size="35" maxlength="30" id="Vorname" name="Vorname"></input><br>
Dein Nachname<input type="text" size="35" maxlength="30" id="Nachname" name="Nachname"></input><br>
Deine E-Mail*:<input type="text" size="35" maxlength="55" id="email" name="email"></input><br> 
<p style="border: 4px dotted green; padding: 1px;">
Geburtsdatum:<br>Tag:<input type="text" size="2" maxlength="2" Value="TT" id="DD" name="DD"></input>
Monat:<input type="text" size="2" maxlength="2" id="MM" name="MM" value="MM"></input>
Jahr:<input type="text" size="4" maxlength="4" id="JJJJ" name="JJJJ" value="JJJJ"></input><br>
Dein Geburtsdatum unter dem User-Bild Anzeigen<input type="checkbox" id="Datum_usern_zeigen" name="Datum_usern_zeigen"></input>
</P>
Administratoren d&uuml;rfen mir E-Mails schicken <input type="radio" name="email0" value="admin"></input>
Andere Benutzer d&uuml;rfen mir E-Mails schicken<input type="radio"name="email0" value="all"></input>

<p style="border: 10px groove rgb(255,5,5); padding: 1px;background-color:#FFFF9F">
<b><b><b><b>Achtung:</b></b></b></b><br />Alle mit * gekennzeicneten Felder sind Pflichfelder;Das hei&szlig;t,dass du diese Felder Ausf&uuml;llen musst!</p>
<button id="SUBMIT" type="Submit" value="senden">
<img src="img/2058.gif"/>
<br />
<SPAN STYLE="background: aqua">
<font color="blue">Registrieren</font></span>
</button>
<button name="Reset" type="Reset" value="felder L&ouml;schen">
<img src="img/2093.gif"alt="-Grafik nicht vorhanden-" />
<br />
<SPAN STYLE="background: lightgreen">
<font color="red">Eintr&auml;ge l&ouml;schen</font></span>
</button>
Danke für alle Antworten im VorausWenn ihr wollt,dürft ihr das Script auch für eure Webpage benutzen(wenn es geht)Aber Postet mir bitte dann das funktionierende Script
 
Hi,

kein Wunder, dass das Script seinen Dienst verweigert. Es befinden sich zahlreiche Fehler darin.
  • Die Methode zum Ermitteln eines Elements anhand seiner ID heisst getElementById
  • Die JS-Eigenschaft zum Zuweisen einer Hintergrundfarbe heisst backgroundColor
  • Eine Hintergrundgrafik wird wie folgt zugewiesen:
Code:
anzeige.style.backgroungImage = "url('img/bars/8.gif')";
  • Die Funktion zum Toggeln eines Elements heiss toggledisplay, nicht toogledisplay
Vielleicht läuft das Script, wenn du das ausbesserst.

Ciao
Quaese
 
Hallo,
ich habe alles Ausgebessert doch es läuft nicht!Hier mein neuer Code;):
HTML:
<script type="text/javascript">
function toggledisplay(divId){
if(document.getElementById(divId).style.display=='none')
document.getElementById(divId).style.display='block';
else document.getElementById(divId).style.display='none';}
</script>
<script type="JavaScript">
function passwortvergleich() {
//############################var#######################
var SUBMITBTN = document.getElementById('SUBMIT')//#####
var feld1 = document.getElementById('Kennwort')//#######
var feld2 = document.getElementById('Kennwort2')//######
var anzeige = document.getElementbyId('st001')//########
//############################var#######################
if(feld1.value == feld2.value){
//fuehrt Befehle in der Schleife aus,wenn PWD1 und PWD2 den gleichen Wert haben
//toggledisplay('lampe1');
document.getElementById('_OK_').style.backgroundColor = "green";
document.getElementById('hiddentxt').value=false;
window.status="Deine eingegebenen Passwörter stimmen Überein"//zeigt Status-Text
SUBMITBTN.disabled=false;//das Formular kann abgesendet werden!
//###################################laenge-Vergleich#################################
if(feld1.value&&feld2.value==8){
ananzeige.style.backgroundImage = "url('img/bars/8.gif')";
SUBMITBTN.disabled=false;
//toggledisplay('pwdalert');
}
else if(feld1.value&&feld2.value<8){
anzeige.style.backgroundImage = "url('img/bars/7.gif')";
SUBMITBTN.disabled=true;
}
else if(feld1.value&&feld2.value>12){
anzeige.style.backgroundImage = "url('img/bars/12.gif')";
SUBMITBTN.disabled=false;
}
//###################################################################################
}

else{
document.getElementById('hiddentxt').value=true;
window.status="deine eingegebenen Passwörter Stimmen nicht überein"
SUBMITBTN.disabled=true;
document.getElementById('_OK_').style.backgroundColor = "red";
}
}
</script>

Danke für alle Antworten im Voraus
 
Hi,

mir ist weiterhin aufgefallen, dass du die Länge der Passwörter vergleichen willst, aber die Länge selbst nicht ermittelst. Dazu dient die Methode length.

Folgende Korrektur der Funktion läuft bei mir. Allerdings habe ich die Überprüfung aus den onkey-Handlern genommen und stattdessen über einen Button aufgerufen.
Code:
function PWDV() {
	//############################var#######################
	var SUBMITBTN = document.getElementById('SUBMIT')//#####
	var feld1 = document.getElementById('Kennwort')//#######
	var feld2 = document.getElementById('Kennwort2')//######
	var anzeige = document.getElementById('st001')//########
	//############################var#######################

	if(feld1.value == feld2.value){
		//fuehrt Befehle in der Schleife aus,wenn PWD1 und PWD2 den gleichen Wert haben
		toggledisplay('lampe1');
		document.getElementById('_OK_').style.backgroundColor = "rgb(0, 255, 0)";
		document.getElementById('hiddentxt').value=false;
		window.status = "Deine eingegebenen Passwörter stimmen Überein";  //zeigt Status-Text
		SUBMITBTN.disabled = false;  //das Formular kann abgesendet werden!

	  //###################################laenge-Vergleich#################################
	  if(feld1.value && feld2.value.length == 8){
	    anzeige.style.backgroungImage = "url('img/bars/8.gif')";
	    SUBMITBTN.disabled = false;//das Formular kann gesendet werden
	    toggledisplay('pwdalert');
	  }else if(feld1.value && feld2.value.length<8){
	  	anzeige.style.backgroungImage = "url('img/bars/7.gif')";
	  	SUBMITBTN.disabled=true;//das Formular kann nicht gesendet werden
	  }else if(feld1.value && feld2.value.length>12){
	  	anzeige.style.backgroungImage = "url('img/bars/12.gif')";
	  	SUBMITBTN.disabled=false;//das Formular kann gesendet werden
	  }else{
			error = confirm("Achtung!\n\rEs ist ein Fehler aufgetreten\n\rder Fehler-Code ist folgender:\n\rERROR 2001:D\n\rdie Passwortlänge konnte nicht ermittelt werden.\n\rFehler an Adressen:\n\r0x00000000FF1\n\r0x00000000FDA\n\r0x00000000FAA\n\r0x00000000F3C\n\r0x00000000E9F\n\rForfahren?");
			if (error == false)
  			history.back();
			else if(error == true)
				window.status="##-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-######-#-#-#-#-#-#-##"
		}
	}else{
		document.getElementById('hiddentxt').value=true;
		window.status="deine eingegebenen Passwörter Stimmen nicht überein"
		SUBMITBTN.disabled=true;
	}
	return true;
}
Vorausgesetzt, dass alle Elemente mit den angegebenen IDs existieren, funktioniert das Script. Warum allerdings für Passwörter mit einer Länge von 9, 10, 11 oder 12 Zeichen eine Fehlermeldung kommen soll, verstehe ich nicht.

Aufruf-Button:
Code:
<button onclick="PWDV(); return false;">Test PW</button>
Ciao
Quaese
 
t doch:)
Ich habe nur die Datei unter ähnlichem Namen aufgerufen
War wohl der Texteditor;)
Auch Computer machen Fehler!
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück