• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Frage zu Formularen

SH_KennY

New member
liebe community

wenn ich ein formular zur anmeldung für beispielsweise einen kurs benutze und dort gewisse einträge haben möchte, die gesetzt werden müssen, wie zb vor- und nachname, dann nehme ich das element <required> und trage dort alle formular-namen ein, die ausgefüllt werden müssen.

jedenfalls denke ich, dass der ansatz richtig ist.

nun müsste ja eine fehlerseite kommen, auf der steht, was man vergessen hat auszufüllen - und das formular dürfte nicht abgesendet werden. das ist bei mir jedoch nicht der fall, das formular wird anstandslos ohne die benötigten felder gesendet :(

wie stelle ich also einen zusammenhang her mit den benötigten einträgen und einer darauf folgedenen seite, die auflistet, was alles nicht ausgefüllt wurde.

meine daten:
Formularseite
Inhalt der PHP-Datei
Bestätigungsseite

freue mich auf eure hilfe :brainless
 
Wo hast du denn das her, dass das mit dem required ohne JS funktioniert?
Da brauchst du schon noch noch irgendwas, dass dieses Feld ausliest und die entsprechenden Felder überprüft (sowohl mit JS als auch mit PHP, denn JS kann ja auch ausgeschaltet sein).
 
Code:
if(document.sendmail.php.Groesse.options[document.sendmail.php.Groesse.selectedIndex].value == "nothing")
 
Code:
function oneIsChecked(nl) {
	for(var i=0; nl.length; i++) {
		if(nl[i].checked) return true;
	}
	return false;
}

//aufruf:
if(!oneIsChecked(document.sendmail.php.Kursart))
 
hmmm, das funzt bei mir nicht :(
es passiert irgentwie gar nichts, obwohl ich die funktion (richtig?) eingebunden habe.

vielleicht hast du die zeit, dir noch mal meine datei anzusehen.

vielleicht hab ich ja auch einen denkfehler in der einbindung?
 
Zuletzt bearbeitet:
Junkee[]... also wirklich:
Code:
function oneIsChecked(nl) {
	for(var i=0; i < nl.length; i++) {
		if(nl[i].checked) return true;
	}
	return false;
}

@SH_KennY: der Aufruf ist an der falschen Stelle - der muss natürlich in deiner Testfunktion passieren.
 
oh, damit bekomme ich jetzt immerhin die nachricht ausgegeben, dass eine kursart angeklickt werden muss

wenn ich dann allerdings auf ok drücke, wird das formular direkt abgesendet und ich lande auf der bestätigungsseite :eek:

wo ist da jetzt der wurm drin?

verändertes formular
 
document.Formular.Kursart ist eine HTMLCollection (eine Art Array) - diese besitzt nicht die Funktion focus; die besitzen nur ihre einzelnen Mitglieder ->
Code:
document.Formular.Kursart[0].focus();

PS: Das hättest du auch aus der Fehlerkonsole ablesen können.
 
Zurück
Oben