Jump to content


Kontaktformular erweitern - Neue Felder werden nicht in E-Mail angezeigt


3 replies to this topic

#1 Richi

    Newbie

  • Mitglied
  • PIP
  • 3 Beiträge:

Geschrieben 11 Februar 2009 - 06:54

Ich wuerde gerne das Kontaktformular verwenden es jedoch um ein paar Felder erweitern.
Ich habe es auch geschafft, dieses zu erweitern und die Anfragen funktionieren auch.
Nach dem durchforsten des Forums habe ich auch die codezeile  if ($i == "13")  erweitert, damit nicht nur die Abfrage funktioniert, sondern die Mail auch tatsaechlich abegeschickt wird.

Mein Problem ist nun, dass das neu eingefuegte Feld in der E-Mail nicht uebertragen/angezeigt wird (habe bisher nur das zusaetliche Feld "Vornamen" im Code eingefuegt und getestet).

Ich habe die Datei mal angehaengt. Vielleicht kann mir jemand weiterhelfen und sagen was ich tun muss/uebersehen habe.

Vielen Dank

Angehängte Datei(en)



#2 Moosa

    Administrator

  • Administrator
  • 198 Beiträge:
  • LocationHannover

Geschrieben 12 Februar 2009 - 02:50

Hi,
es ist leider etwas komplizierter das Kontaktscript zu erweitern, da es nicht reicht einfach nur ein neues Feld einzufügen.
Es müssen auch sämtliche Überprüfungen etc. dupliziert werden (Was du ja gemacht hast).

Wenn es wirklich einfach nur funktionieren soll, dann muss vor allem Zeile 124 geändert werden:
$_POST["text"] = $_POST["send"]["autor"]." mit der Mail Adresse:
 ".$_POST["send"]["mail"]." hat ihnen folgende Nachricht gesendet: \n \n $texto";

z.B. in :

$_POST["text"] = $_POST["send"]["autor"]." mit der Mail Adresse:
 ".$_POST["send"]["mail"]." \n Vorname:".$_POST["send"]["vorname"]." hat ihnen folgende Nachricht gesendet: \n \n $texto";

Dadrin wird der eigentliche Inhalt der Email festgelegt. Du hast dort viele Möglichkeiten wie du es deinen Wünschen anpassen kannst.

Folgendes sollte eventuell auch noch mal kopiert werden:

$snachricht = htmlspecialchars($_POST["send"]["nachricht"]);

Ich weiß es ist nicht sehr komfortabel, aber es müsste eigentlich funktionieren.

Moosa

#3 Richi

    Newbie

  • Mitglied
  • PIP
  • 3 Beiträge:

Geschrieben 12 Februar 2009 - 05:47

Super! Vielen Dank. Die Uebergabe der Felder funktioniert nun. Der Code sieht wie folgt aus (falls jemand ein aehnliches Problem hat):

$_POST["text"] = $_POST["send"]["vorname"]." ".$_POST["send"]["autor"]." mit der E-Mail Adresse: ".$_POST["send"]["mail"]." 
		\n Strasse:".$_POST["send"]["strasse"]."
		\n Postleitzahl:".$_POST["send"]["plz"]."
		\n Stadt:".$_POST["send"]["stadt"]."
		\n Telefon:".$_POST["send"]["telefon"]."
		\n Fax:".$_POST["send"]["fax"]."
		\n hat ihnen folgende Nachricht gesendet: \n \n $texto";
		$fautor = "<h2>Ihre Mail wurde versendet!</h2>";


#4 Richi

    Newbie

  • Mitglied
  • PIP
  • 3 Beiträge:

Geschrieben 12 Februar 2009 - 06:01

Nun habe ich ein weiteres Problem, das sich wohl in folgendem Code verbirgt:

	if ($i == "13") {
		$autor = $_POST["send"]["autor"];
		if ($umbruch == "no") {
			$texto = $_POST["send"]["nachricht"] ;
			}		
		else { $texto = wordwrap($_POST["send"]["nachricht"], $umbruch );}

Ich habe mehrere Felder die ich hier uebergeben moechte. Der Text in der E-Mail lautet normalerweise:

Name mit der E-Mail Adresse hat  ihnen folgende Nachricht gesendet: "Hier steht dann der Text aus dem Nachrichten Feld"

Ich habe den Text wie folgt umgeschrieben:
Name mit der E-Mail Adresse moechte folgende Produkte bestellen:
Hier sollten nun die Artikel stehen, fuer die ich im Formular je ein Feld angelegt habe. Also:
Produkt 1: 5 Stueck
Produkt 2: 1 Stueck
Produkt 3: 2 Stueck

Ich denke, dass ich wohl irgendwie den oben angegebenen Code erweitern muesste, weiss aber leider nicht wie.
Ausserdem haette ich gerne, dass nicht nur der Inhalt der Felder uebergeben wird, sondern auch die Feldbezeichnung also in diesem Fall der jeweilige Produktname uebergeben wird.

Ueber Hilfe wuerde ich mich freuen!
Regina





1 Besucher lesen dieses Thema

0 members, 1 guests, 0 anonymous users