DTP: fehler bei fromularüberprüfung

hallo!
ich habe folgendes Problem:
es soll überprüft werden, ob alle felder in meinem formular ausgefüllt sind. ist dies der fall, so wird ein php-script aufgerufen, ist dies nicht der fall, wird abgebrochen und zur érneuten eingabe aufgefordert. bis zu einem bestimmten punkt funktioniert das auch, aber dann wird das php-script aufgerufen ohne das die folgenden felder überprüft wurden.

mein code für die überprüfung sieht so aus:

funtion pruefung(){
if(name==""){
alert("Bitte füllen Sie das Feld 'Name' aus!");
document.form.name.focus();
return false;
}
if(alter==""){
alert("Bitte füllen Sie das Feld 'Alter' aus!");
document.form.alter.focus();
return false;
}
}

mein code für das formular sieht so aus:

<form name="form" action="abc.php" method="get" onSubmit="return pruefung()">
Name:
<input name="name" type="text"><br>
Alter:
<select name="alter"><br>
<option>unter 16</option>
<option>über 16</option>
</select><br>
<input type="submit" value="OK">
</form>

angenommen im feld 'name' steht nichts und ich drücke auf 'OK', kommt die meldung
"Bitte füllen Sie das Feld 'Name' aus!"
so wie es geplant war.
wenn ich dann aber wieder auf 'OK' klicke kommt nichts und das php-script wird ausgeführt.

kann es sein, dass es was damit zu tun hat, das die erste formularzelle eine zum eingeben ist und die andere eine zum asuwählen?

ich komm da echt nicht weiter -.-

david

  1. Hallo!

    Unabhängig von dem JavaScript-Problem: Warum führst Du die Überprüfung nicht im PHP-Skript durch? Dann wird auch geprüft, wenn JS deaktiviert ist.

    Gruß, Achim

  2. hallo
    ich bins selbst nochmal. ich habe im html code was geändert und daraufhin hat es auch funktioniert. guckt's euch an!

    Alter:
    <select name="alter"><br>
    <option>unter 16</option>  <----hier lag der fehler
    <option>über 16</option>   <----
    </select>

    ich habe das </option> tag weggelassen und im <option> tag value eingesetzt das ganze sieht dann so aus

    Alter:
    <select name="alter" selected="unter 16"><br>
    <option value="unter 16" >unter 16  <----hier lag der fehler
    <option value="über 16">über 16     <----
    </select>

    cya

    david