am 12.07.2011, 19:47 Uhr eröffnete folgenden Thread HTML5 & CSS 5680 mal gelesen 25 Antwort(en).
Hi, da bin ich mal wieder, hab mal ein problem, hab ein kontaktformular erstellt, aber das din will nicht senden. Ich denke da brauch ich etwas hilfe.Kann mal bitte einer gucken? Danke [html]
Foren Moderator Evil Genius Content Halbgott (973 Beiträge)
am 12.07.2011, 21:33 Uhr schrieb matthes
Hi.
Erst einmal wäre es nützlich gewesen, den Quelltext in [html]-Tags einzubetten, dann wäre er schön formatiert gewesen. Zweitens wäre es praktisch gewesen, den ganzen nicht dazugehörenden Code wegzulassen und es auf den Teil von <form> bis </form> zu beschränken...
Das erste Problem könnte das Leerzeichen im Namen der Datei sein, an die das Formular gesendet wird. Ãœberprüfe das bitte. Das zweite Problem ist, dass beim Event "onsubmit" eine Javascript-Funktion ausgeführt wird, die Du uns vorenthältst. Ich jedenfalls kenne sie nicht - allerdings gehe ich stark davon aus, dass diese Funktion false zurück gibt, bzw. die Variable document.MM_returnValue false enthält. Das würde das Absenden verhindern.
zu den Fehlern: 1. niemals Variablen oder Namen die im system zu verarbeiten sind gross schreiben. 2. keine bindestriche für variablen 3. Dateinamen klein und ohne bindestriche 4. ggf nachlesen wie sich das <label verhält 5. in formularen "kurzfunktionen" verwenden [html]validate(this,\'NisNum\'); zeigt auf eine funktion im Dateihead...so wird das alles übersichtlicher und leichter zu warten[/html]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head>
<title>Unbenannt 1</title> <script> /*brücke zu deiner Validation form*/ function validate(that,validationmech){ var validatedValue= MM_validateForm(that.value,\'\',validationmech); that.value=validatedValue; }; function validate_all(formobj){ /*alle formelemente validieren*/ /* geht oder geht nicht zurück geben*/ } </script> <style> <br />/*positioniert das Label element*/ <br />#form1 label { <br /> width:130px; <br /> float:left; <br />} <br />/*entwertet floatings dann fängt die nächste label-inputzeile neu an*/ <br />#form1 div { <br /> clear:left; <br />} <br /></style> </head>
Ich hab versucht soweit das meine Fähigkeiten zulassen die Fehler auszubügeln. Dein Skript überfordert mich etwas.
Ich bin nun soweit das das Kontaktformular an mich sendet, aber es kommt leider nur der Feldname an, aber kein Inhalt. Ich brauch bitte noch mal Hilfe.
....so ich hab mich weiter gekämpft...ich hab jetzt das ding zum senden gebracht....hurra....nun bockt er wenn ich die captcha einfüge. die captcha ist ok...denke das liegt an der senden.php..bitte mal gucken.
<?php
session_start(); if(isset($_SESSION[\'captcha_spam\']) AND $_POST["sicherheitscode"] == $_SESSION[\'captcha_spam\']){ unset($_SESSION[\'captcha_spam\']);
Foren Moderator Evil Genius Content Halbgott (973 Beiträge)
am 16.07.2011, 20:56 Uhr schrieb matthes
Nein, an "globel_off" liegt es sicherlich nicht, denn Du verwendest die korrekten Variablen.
Wird $_SESSION[\'captcha_spam\'] denn auf der Seite vorher korrekt gefüllt? Und ist $_POST[\'sicherheitscode\'] korrekt benannt und entspricht dem in der Session gespeicherten Code?
Lass Dir die Variablen $_SESSION und $_POST in der kontaktsenden.php einmal ausgeben. Z.B.: <?php echo \'
\';
print_r($_SESSION);
print_r($POST);
echo \'
\'; ?>
Make Seitenreport great again!
gelöschter Benutzer
am 17.07.2011, 10:55 Uhr schrieb
Erst mal danke das sich wenigstens einer bemüht zu helfen.-)
So hab ich gemacht und wird alles ausgegeben was ich ausgefüllt habe und der Sicherheitscode auch korrekt. Aber sendet nicht?
Foren Moderator Evil Genius Content Halbgott (973 Beiträge)
am 17.07.2011, 11:09 Uhr schrieb matthes
Das erste Array, die Session, ist anscheinend leer. Also speicherst Du den Sicherheitscode nicht korrekt in der Session, ergo stellt die Ãœberprüfung bei dem Vergleich fest, dass es nicht stimmt. $_SESSION[\'code\']==$_POST[\'code\'] leer == 4DK8X
Wie speicherst Du den Code denn in der Session? Befindet sich in der Formulardatei auch ein session_start()?
Make Seitenreport great again!
gelöschter Benutzer
am 17.07.2011, 14:08 Uhr schrieb
Ich hoffe das ich dich jetzt richtig verstanden. Nein kein session. Ich hab dem Kontaktformular im Formularelement über Aktion die kontaktsenden.php zugeordnet.
Foren Moderator Evil Genius Content Halbgott (973 Beiträge)
am 17.07.2011, 16:13 Uhr schrieb matthes
Hast du nicht.
Wo weist du $_SESSION[\'captcha_spam\'] einen Wert zu? Dies müsste in der Datei geschehen, die das Formular anzeigt oder in der Datei, die den Code generiert. Momentan ist $_SESSION[\'captcha_spam\'] leer, darum funktioniert es nicht.
Beitrag erstellen
EinloggenKostenlos registrieren