Antworten auf deine Fragen:
Neues Thema erstellen

kleiner Fehler beim Kontaktformular

DennyLee

Nicht mehr ganz neu hier

Hey Leute,

ich weiß es nervt glaube jedem hier das Thema Kontaktformular.
Und zwar habe ich auch eins erstellt funktioniert alles richtig super, außer eine kleine Sache die mich stört.

Wenn man z.b. das Formular ausfüllt und ein Pflichtfeld vergisst so läd es in php action 2. Das ist ja alles ganz super aber manche Felder (die ich schon ausgefüllt habe) verschwinden wieder :(.

Habe sicher bloß einen kleinen Fehler in der Sache.

Code:
<?php
if ($action=='2') {
$fehler = ""; $firma = $_POST["firma"]; $anrede = $_POST["anrede"]; $vorname = $_POST["vorname"]; $nachname = $_POST["nachname"]; $strasse = $_POST["strasse"]; $plz = $_POST["plz"]; $ort = $_POST["ort"]; $land = $_POST["land"];
$telefon = $_POST["telefon"]; $fax = $_POST["fax"]; $email = $_POST["email"]; $betreff = $_POST["betreff"];
$nachricht = $_POST["nachricht"];
$firma = str_replace(array("<",">","\$","{","}","[","]"),"",$firma);
$anrede = str_replace(array("<",">","\$","{","}","[","]"),"",$anrede);
$vorname = str_replace(array("<",">","\$","{","}","[","]"),"",$vorname);
$nachname = str_replace(array("<",">","\$","{","}","[","]"),"",$nachname);
$strasse = str_replace(array("<",">","\$","{","}","[","]"),"",$strasse);
$plz = str_replace(array("<",">","\$","{","}","[","]"),"",$plz);
$ort = str_replace(array("<",">","\$","{","}","[","]"),"",$ort);
$land = str_replace(array("<",">","\$","{","}","[","]"),"",$land);
$telefon = str_replace(array("<",">","\$","{","}","[","]"),"",$telefon);
$fax = str_replace(array("<",">","\$","{","}","[","]"),"",$fax);
$betreff = str_replace(array("<",">","\$","{","}","[","]"),"",$betreff);
$nachricht = str_replace(array("<",">","\$","{","}","[","]"),"",$nachricht);
if (empty($_POST['nachname']) || empty($_POST['vorname']) || empty($_POST['email']) || empty($_POST['nachricht'])) {  $form_ok = 0; $fehler .= "- Bitte f&uuml;llen Sie alle mit * markierten Felder aus!<br>"; } else { $form_ok = 1; }
//emailadresse pruefen
if(!ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$",$email)){
  $mail_ok=0; if ($email != '') { $fehler .= "- Geben Sie bitte eine g&uuml;ltige E-Mail-Adresse ein!<br>"; } } else {$mail_ok=1;}
if (($form_ok=='1') && ($mail_ok=='1')) {
$ip = $_SERVER["REMOTE_ADDR"];
if ($anrede == 'Herr') { $gruss = "Sehr geehrter Herr"; }
if ($anrede == 'Frau') { $gruss = "Sehr geehrte Frau"; }
$betreff1 = "Kontaktformular Kreativ Fabrik";
$mailtext = "Sie haben eine Nachricht über Ihr Kontaktformular erhalten:\n\nBetreff: $betreff\n\nNachricht: $nachricht\n\nKontaktdaten:\n\nFirma: $firma\nAnrede: $anrede\nName: $vorname $nachname\nStraße: $strasse\nPLZ/Ort: $plz $ort\nLand: $land\nTelefon: $telefon\nFax: $fax\nE-Mail: $email\n\nIP-Adresse des Absenders: $ip";
mail($empfaenger, $betreff1, $mailtext, "FROM: $nachname $vorname <$email>");

Das ist jetzt nur ein Ausschnitt des Codes, will euch ni mit dem ganzen php Code vollballern.

Vielen Dank
Gruß Denny
 

Joddasz

Noch nicht viel geschrieben

AW: kleiner Fehler beim Kontaktformular

definierst du dieses automatische neuausfüllen des formulars in deiner if-schleife action1 und hast das eventuell in action2 ausgelassen?
 

Joddasz

Noch nicht viel geschrieben

AW: kleiner Fehler beim Kontaktformular

ist natürlich jetzt schwer für einen aussenstehenden durchzublicken, aber ich echo mir bei solchen problemen immer noch mal sämtliche variablen, ausserhalb sämtlicher schleifen, damit ich genau sehen kann was fehlt und wie ausgegeben wird. dann kann sich an die einzelnen variablen machen, die fehler bereiten und meist fällt es einem dann wie schuppen von den augen. ist mühselig aber immer besser als stundenlang mutlos vor so einem blöden skript zu sitzen :)
 

EnricoS

Nicht mehr ganz neu hier

AW: kleiner Fehler beim Kontaktformular

Hi,

was meinst du mit "verschwinden"?
Wenn du ein Feld vergisst, also dass Formular nicht verschickt werden kann, musst du natürlich beim Reload der Seite dein $_POST Variable auslesen und als Standartwerte in die Formularfelder setzten.
Denn beim erneuten Senden wird $_POST mit den aktuellen Werten überschrieben.

Gruß Enrico

P.S.: Es gibt unter anderem auch hier soviele gute Script-Beispiele für Kontaktformulare. Warum verwendets nicht einfach eins davon?
 

Joddasz

Noch nicht viel geschrieben

AW: kleiner Fehler beim Kontaktformular

vom neuausfüllen des formulars per $_POST nach der if-schleife bin ich jetzt einfach mal ausgegangen...
 

DennyLee

Nicht mehr ganz neu hier

AW: kleiner Fehler beim Kontaktformular

ahh ich habe es hinbekommen, ihr hattet Recht. Lag am Post.

Nochmal etwas anderes ihr wisst ni zufällig wie ich ganz einfach eine Bestätigungsmail integriere?
 

lostboi

Nicht mehr ganz neu hier

AW: kleiner Fehler beim Kontaktformular

Was genau meinst Du mit einer Bestätigungsmail?
Möchtest Du demjenigen, der das Formular ausfüllt eine Mail schicken, das das Formular erfolgreich abgesendet wurde?
Dann würde ich einfach eine Checkbox ins Formular übernehmen, welche bewirkt, das wenn sie aktiviert ist, an die eingegebene Email Adresse die gleiche Mail noch einmal versendet wird. Dort kannst Du dann den Mailinhalt und / oder die Betreffzeile einfach um ein "Bestätigungsmail" o.ä. ergänzen.

Sollte kein Problem sein, ist einfach ein erneuter Aufruf der mail() Funktion mit veränderten Parametern für empfänger, sender und ggf. Betreff oder Text.

Gruß
LostBoi
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.616
Beiträge
1.538.358
Mitglieder
67.536
Neuestes Mitglied
QuestionMark
Oben