Mahlzeit LilliLy,
ich habe ein Formular erstellt das ich mit JavaScript überprüfen lassen möchte.
Warum? Diese "Überprüfung" ist jederzeit durch den Benutzer abschalt- und damit umgehbar. Eine wirkliche Prüfung kann NUR auf dem Server erfolgen - clientseitige Prüfungen (durch Javascript) sollten höchstens eingesetzt werden, um den Bedienkomfort zu erhöhen (durch zeitnahes Feedback an den Benutzer).
Nur leider funktioniert da gar nix.
"Funktioniert nicht" funktioniert nicht.
Es wird nicht überprüft und das Formular wird direkt an die Mail-Adresse geschickt.
Aha, also doch noch eine Problembeschreibung. Wenn das Formular abgeschickt wird, wird Deine Funktion "plausibel()" wohl in irgendeiner Form true zurückgeben ... jedenfalls nicht false. Dazu später.
selbst wenn ich das Formular ausfülle steht in der ankommenden Mail nichts drin.
Das ist dann wohl ein serverseitiges Problem bei der Formularverarbeitung.
Wenn ich die Seite öffne wird sie ebenfalls verschickt.
Das wohl auch. Anscheinend überprüfst Du in Deinem serverseitigen Skript "expertspeedy.php" nicht wirklich, welche Werte übergeben werden.
Bitte helft mir, da es nun auch sehr eilig wird und ich nicht mehr weiß was ich machen soll.
<abschweif>Warum kommen die Fragesteller eigentlich immer erst dann hier ins Forum, wenn die Deadline kurz bevor steht, anstatt sich rechtzeitig mit ihren Problem zu beschäftigen?</abschweif>
<Script language="JavaScript">
1. empfiehlt es sich, sämtliche Element-Tags und Attribute XHTML-konform durchgehend klein zu schreiben und
2. fehlt das zwingend erforderliche http://de.selfhtml.org/html/referenz/attribute.htm#script@title=type-Attribut.
// Formular-Checker
function check(forms){
Welchen Sinn hat ein Funktionsparameter, wenn Du ihn nie mit Werten füllst (beim Aufruf der Funktion) und ihn innerhalb der Funktion auch nie verwendest?
name=document.forms[0].elements[0].value;
email=document.forms[0].elements[1].value;
Informiere Dich zum <http://de.selfhtml.org/javascript/sprache/variablen.htm@title=Unterschied zwischen globalen und lokalen Variablen>.
Außerdem: bist Du Dir ganz sicher, dass der Name IMMER im ersten Feld des ersten Formulars steht? Ich würde Dir <http://de.selfhtml.org/javascript/objekte/elements.htm@title=Schema 4> empfehlen - zusammen mit der Nutzung des o.a. Funktionsparameters in Kombination mit der Nutzung von http://de.selfhtml.org/javascript/sprache/objekte.htm#this@title=this beim Aufruf der Funktion.
maildot=email.indexOf(".");
Und was ist, wenn in der angegebenen Emailadresse mehrere Punkte existieren?
if(strasseobjekt==""){alert("Bitte überprüfen Sie die Straße des Objektes!");
Woher kommt die Variable namens "strasseobjekt"? Woher soll ihr Inhalt kommen?
Es ist weiterhin IMHO nicht sinnvoll, hier HTML-Entities für Sonderzeichen zu verwenden - schließlich handelt es sich um Javascript, nicht HTML.
return(false);}
Da die Überprüfung SO eigentlich nicht funktionieren KANN, wird natürlich auch kein false zurückgegeben.
</script>
-->
</style>
Das ist so kein korrektes HTML. Hast Du schon den Validator bemüht?
<form action="expertspeedy.php" method="get" name="kontakt" enctype="text/plain" onSubmit="return plausibel();">
Zur generellen Kleinschreibung von Attributen s.o. Du solltest hier der Funktion "plausibel()" das aktuelle Formular per Parameter übergeben (Stichwort http://de.selfhtml.org/javascript/sprache/objekte.htm#this@title=this).
<td class="table_col_title">Produkt*</td>
<td class="table_cell"><select name="produkt" style="font-size:15px">
Um zwischen "Kopfzellen" und normalen "Datenzellen" zu unterscheiden, bietet sich der Einsatz von <th> und <td> an. Außerdem solltest Du CSS-Angaben möglichste in zentrale Stylesheets auslagern.
MfG,
EKKi
sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|