Hallo allerseits
Ich bin neu hier, daher zuerst einmal ein fettes Hallo an alle!
Ich habe ein Formular Script:
Und das ist der Body
Wenn ich das ganze nun hochlade auf den Server wird das Formular korrekt angezigt. Wenn ich es aber ausfülle und absende, wird die Seite einfach neu geladen und das Form geleert. Passieren tut nichts.
An was könnte das liegen?
Herzlichen Dank!
Roland
Ich bin neu hier, daher zuerst einmal ein fettes Hallo an alle!
Ich habe ein Formular Script:
PHP-Code:
<?php
//die eMailadresse, an die das Formular gehen soll
$empfaenger = "meine@email.com";
//Der Betreff für das eMail, das sie erhalten werden
$betreff = "Mein Kontaktformular";
//Titel ihrer Website
$webSiteTitel = "Mein Kontaktformular";
//Wo sollen Benutzer eine Fehlermeldung hinschicken, falls etwas nicht funktioniert? Die kann die gleiche sein wie die,
//wo das Formular hingeschickt wird.
$fehleradresse = "Fehlermeldung@ihreDomain.de";
//Überschrift
$ueberschrift = "Kontaktformular";
//Überschrift von dem Formular
$ormularueberschrift = "Schnell und einfach. Nutzen sie das Formular.";
//Überschrift von dem Textfeld
$textfeldUeberschrift = "Geben sie hier ihr Anliegen ein:";
//Überschrift von dem Namensfeld
$namensfeldUeberschrift = "Ihr Name:";
//Überschrift von dem eMailfeld
$eMailfeldUeberschrift = "Ihre eMailadresse";
//Textausgabe bei einer fehlerhaften eMailangabe
$fehlerhafteEMailangabe = "Bitte korrigieren sie die Adresse!";
//Name des Sende Buttons
$sendeButton = "abschicken!";
//Name des Lösch Buttons
$loeschButton = "nochmal neu!";
//Erfolgreiches Versenden: Mitteilung an den Benutzer
$versendenErfolgreich = "Vielen Dank, wir setzen uns baldmöglichst mit ihnen in Verbindung";
//Benutzen sie eine css Datei zur Formatierung? Wenn ja, dann geben sie hier der Pfad inkl. Datei an
//Haben sie keine, so lassen sie die Variable = ""
$cssDatei = "irgendein.css";
//////////////
//Ab hier sollten sie nur noch weiter ausfüllen, wenn sie wissen was sie tun.
//////////////
$umg_ref = getenv(HTTP_REFERER);
$umg_bro = getenv(HTTP_USER_AGENT);
$umg_zeit = date("l j. F Y - G.i.s");
//Die Adresse aus dem Formular
$absender = $email;
//Funktion zum zusammenstellen des Inhaltes
//Dies wird das eMail sein, was sie zugeschickt bekommen
function inhaltformat($umg_ref,$umg_bro,$umg_zeit,$absender,$name,$text)
{
$inhalt = "$name mit dieser eMailadresse: $absender\n";
$inhalt .= "hat folgende Nachricht abgeschickt:\n";
$inhalt .= $text."\n";
$inhalt .= "*************Umgebung***************\n";
$inhalt .= $umg_ref."\n";
$inhalt .= $umg_bro."\n";
$inhalt .= $umg_zeit."\n";
return $inhalt;
}
//Das eMail mit passendem Inhalt verschicken
function verschicken($inhalt,$empfaenger,$absender,$betreff)
{
$kopf = "From: $absender\nReply-To:$absender\nX-Mailer:FormFix1.1.0";
mail($empfaenger, "Kontaktformular", $inhalt, $kopf);
//printf ("
Nachricht erfolgreich verschickt!
");
}
//Das Script hört vorläufig auf
//////////////
//Dies ist ihre Seite mit dem Formular. Weitere Header Informationen können sie von Hand einfügen
//////////////
?>
Code:
<? ////////////// //Das Script wird 2x durchlaufen, vor dem abschicken und nach dem abschicken. //Vorausgesetzt, der 1. Durchlauf war erfolgreich, beginnen wir hier mit dem Script //Die eMail Adresse wird auf ihre Richtigkeit geprüft ////////////// $korr_em = ereg("^([_a-zA-Z0-9-]+)(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,3})$", $email); //Eine Textvariable $var_text = $text; //Falls die eMail ADresse falsch ist, soll auch der Text ungültig werden if ($email AND !$korr_em) $var_text = false; //Eine if Abfrage klärt, ob das Formular bereits bearbeitet und abgeschickt wurde (Entweder Text oder eMail plus Los Button if ($los AND ($var_text OR ($email AND $korr_em))) { //Wenn ja, dann wird der Inhalt formatiert und abgeschickt $inhalt = inhaltformat ($umg_ref,$umg_bro,$umg_zeit,$absender,$name,$text); verschicken ($inhalt,$empfaenger,$absender,$betreff); //Einschub der HTML Ausgabe, die der Benutzer als Bestätigung sehen wird. ?> <h2>Ihre Nachricht</h2> <?echo $name?>: <? echo "$text "; ?> eMailadresse: <? echo "$email ";?> <? echo " "; echo $versendenErfolgreich; //Ende der ersten Bedingung, das Script geht weiter } else { ////////////// //Wenn das Formular zum ersten Mal aufgerufen wird, kommt dieser Teil dran //...oder wenn ein Fehler in der eMail Adresse aufgetaucht ist ////////////// ?> <h2><? echo $ueberschrift ?></h2> <h5><? echo $ormularueberschrift ?></h5> <form method="post" action="<?echo $PHP_SELF?>"> <? echo $textfeldUeberschrift ?> <textarea name="text" cols="40" rows="5"><?echo $text?></textarea> <? echo $namensfeldUeberschrift ?> <input type="text" name="name" value="<?echo $name?>"> <? echo $eMailfeldUeberschrift ?> <?//Falls die Adresse falsch ist... //..wäre es gleichzeitig auch ärgerlich, wenn der alte Text weg wäre... if ($email AND !$korr_em) { echo "<h5>"; echo $fehlerhafteEMailangabe ; echo "</h5>"; } ?> <input type="text" name="email" value="<?echo $email?>" > <input type="submit" value="<? echo $sendeButton ?>" name="los"> <input type="reset" value="<? echo $loeschButton ?>"> </form> Fehler? Bitte melden an <? echo $fehleradresse ?> <? } ?>
An was könnte das liegen?
Herzlichen Dank!
Roland
Kommentar