EKKi: Problem mit Formmailer + Checkform

Beitrag lesen

Mahlzeit satarielxx,

hab da ein kleines problem. Hab einen Formmailer dazu ein externes JS zwecks Formularüberprüfung.

Das ist in höchstem Maße gefährlich. Benutzereingaben prüft man IMMER und AUF JEDEN FALL auf dem Server - und dabei berücksichtigt man die Prämisse "All input is evil!". Prüfungen in (vom Client manipulierbaren bzw. abschaltbaren) Javascript sind allerhöchstens die Kür und sollten nur der Bequemlichkeit der Benutzer dienen.

Ich möchte nun das Formular auf die vollständigkeit Prüfen lassen und ERST DANACH soll das Formular abgesendet werden.

Dann tu das doch auch erst DANACH ...

Weis jetzt irgendwie nicht weiter --> zur Zeit wird das Formular zwar überprüft aber trotzdem wird das Formular gesendet

Natürlich.

Hier mal das Script:

<?php

Bei clientseitigen Problemen ist es nicht sinnvoll, in keinster Weise hilfreich und für Deine Leser eher lästig, serverseitigen Code zu posten.

<form action="<?php print $_SERVER['PHP_SELF']; ?>"  name="versandform" method="post">

Hier solltest Du sinnvollerweise einen entsprechenden http://de.selfhtml.org/javascript/sprache/eventhandler.htm#onsubmit@title=Eventhandler notieren. Formulare können nicht nur durch Mausklicks auf Knöpfe abgeschickt werden - berücksichtige das! Versuche weiterhin, die Erläuterung zu verstehen ... schließlich willst Du doch je nach Prüfungsergebnis das Formular abschicken oder nicht, oder?

<input name="Senden" type="submit" value="ABSENDEN" onclick="javascript:pruefung()"  />

Die Angabe von "javascript:" ist überflüssig - der Attributwert von Eventhandlern wird von aktuellen Browsern in jedem Fall als Javascript-Code ausgewertet.

if (isNaN(document.versandform.plz.value)==true)

Was ist mit Versand in Länder, in denen die Postleitzahl nicht nur numerisch ist (z.B. Großbritannien)?

window.alert ("Bitte akzeptieren sie die AGB's")

Bitte ver'schone un's mit überflü'ssigen Apo'strophen ...

MfG,
EKKi

--
sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|