Passwort Validierung mit JQuery!

andy_tz

Mitglied
Hallo,

ich habe das Problem, das die Passwort Validierung nicht funktioniert. Nach dem Absenden wird immer die Fehlermeldung ausgegeben, das die Passwörter nicht übereinstimmen!

Ich habe alles mehrmals überprüft aber kann den Fehler leider nicht finden!

forms.js
Code:
$(document).ready(function(){
		
	$("#register").validate({
		
		rules: {		
			
			username: "required",
			
			password: {
				required: true,
				minlength: 6,
				maxlength: 10	
			},
				
			password2: {	
				required: true,
				equalTo: "#password",
				minlength: 6,
				maxlength: 10
			},
				
			email: {
				required: true,
				email: true	
			}
		},
			
		messages: {
				
			username: "Bitte geben Sie einen Benutzernamen ein!",

			password: {
				required: "Bitte Passwort angeben!",
				minlength: jQuery.format("mindestens {0} Zeichen eingeben!"),
				maxlength: jQuery.format("maximal {0} Zeichen eingeben!")
			},

			password2: {					
				required: "Bitte Passwort wiederholen!",
				equalTo: "Passwort wiederholen",
				minlength: jQuery.format("mindestens {0} Zeichen eingeben"),
				maxlength: jQuery.format("maximal {0} Zeichen eingeben!")
			},
				
			email: {
				required: "Bitte E-Mail-Adresse eingeben!",	
				email: "E-Mail im Format name@domain.de eingeben!"	
			}
		},
	
		highlight: function(label) {
			$(label).closest('.control-group').addClass('error');
		},
	
		success: function(label) {
			label
			.text('OK!').addClass('valid')
			.closest('.control-group').addClass('success');
		},
				
		submitHandler: function(form) {
			$.post('process_register.php', $("#register").serialize(), function(data) {
				$('#results').html(data);
			})
		}	
	});
});

register.php
HTML:
<form class="form-actions" action="" id="register" method="post">
	<fieldset>
	<div class="control-group">
		<label class="control-label" for="username">Benutzername <em>*</em></label>
		<div class="controls">
			<input type="text" class=" input-xlarge" name="username" id="username">
		</div>
	</div>
	<div class="control-group">
		<label class="control-label" for="email">E-Mail Adresse <em>*</em></label>
		<div class="controls">
			<input type="text" class="input-xlarge" name="email" id="email">
		</div>
	</div>
	<div class="control-group">
		<label class="control-label" for="password">Passwort <em>*</em></label>
		<div class="controls">
			<input type="password" class="input-xlarge" name="password" id="password">
		</div>
	</div>
	<div class="control-group">
		<label class="control-label" for="password2">Passwort wiederholen <em>*</em></label>
		<div class="controls">
			<input type="password" class="input-xlarge" name="password2" id="password2">
		</div>
	</div>
    <br>
	<div class="control-group">
		<button type="submit" class="btn btn-primary"  name="submit" onclick="formhash(this.form, this.form.password);">Registrieren!</button>
		<button class="btn" onClick="javascript:document.register.reset()">Löschen</button>
	</div>
	</fieldset>
</form>

Ich benutze die jQuery Validation Plugin - v1.10.0 - 9/7/2012
von https://github.com/jzaefferer/jquery-validation

Vielen Dank im Voraus!
Andy
 
Zuletzt bearbeitet:
Ich sehe 2 Sachen:
Code:
name="submit"
http://api.jquery.com/submit/ hat gesagt.:
Forms and their child elements should not use input names or ids that conflict with properties of a form, such as submit, length, or method. Name conflicts can cause confusing failures.
Code:
onclick="formhash(this.form, this.form.password);"
Da diese Funktion das Passwort-Feld als argument übergeben bekommt, gehe ich mal davon aus, das sie irgendwas damit macht, ich denke mal, da ist der Hase begraben. Was sie macht, kann ich nicht sagen, ohne die Funktion zu sehen,
 
Hi abuzze,

beide Dinge die du angesprochen hast sind absolut unrelevant dafür! Ich habe es beides schon ohne versucht, trotzdem funktioniert die Validierung der Passwörter nicht richtig!
 
Hallo,

habe mein Problem selbst gelöst! Falls es jemanden interessieren sollte...

HTML:
name=password
in einen anderen Namen geändert, schon funktionierts! :D
 

Neue Beiträge

Zurück