Kontaktformular Datum und Telefon nicht gesendet

this

Grünschnabel
Hallo
Ich bin ein blutiger Anfänger, was PHP betrifft. Ich hoffe, die Frage wird nicht zum 100mal gestellt. Ich habe nach einer Lösung gesucht, aber keine gefunden, zumal man bei PHP wohl verschiedene Variablen hernehmen kann für Telefonnummer und Datum.

Mein Problem: Ich habe ein Datum und Telefonnummern Feld integriert.
Das wird mir aber nicht per Mail übermittelt.

Wenn ich nun diesen Codeschnipsel
PHP:
if ($ok) {
		mail(EMPFAENGER, BETREFF, $body, $date, $phone,  "From: ".ABSENDER."\nReplay-To: ".$email);
		$allesok = "Vielen Dank für dein Wunschdatum, ich melde mich in Kürze";
		
	}
verwende, so erhalte ich gar keine Mail. Ich habe – vielleicht etwas hemdsärmlig die beiden Variablen $date und $phone ergänzt.
Lasse ich sie weg, so erhalte ich zwar eine E-Mail allerdings ohne Datum und Telefonnummer.

Muss ich hier:
PHP:
define("ABSENDER", "kontakt@pfoto.ch");
define("EMPFAENGER", "kontakt@pfoto.ch");
define("BETREFF", "termin-anfrage");

oder hier:
PHP:
if ($_POST["send"]) {
	$name = $_POST["name"];	
	$email = $_POST["email"];
	$body = $_POST["body"];
$phone = $_POST["phone"];
$date = $_POST["date"];
	$ok = true;

noch etwas ergänzen?
 
Zuletzt bearbeitet:
Weder noch, hast du dir einmal die Funktion "mail" angeschaut, was die für Parameter erwartet?

PHP:
mail (string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )

Wenn man sich das so anschaut, dann wird der Inhalt der Mail durch nur ein Parameter symbolisiert. Du übergibst aber 3 Paramter für den Inhalt (versuchst es zumindest).

Die Lösung findest du durch das Zusammenfügen aller Variablen/Strings die in den Körper der Mail sollen.
 
Danke. Nach einigem Probieren habe ich jetzt herausgefunden wie das geht:

<php>if ($ok) {
mail(EMPFAENGER, BETREFF, $message=$body . $name . $phone . $email . $date, "From: ".ABSENDER."\nReplay-To: ".$email);
$allesok = "Vielen Dank für dein Wunschdatum, ich melde mich in Kürze";

}
</php>
Allerdings erhielt ich dann ein Mail, das alle Informationen aneinander kettet. Etwa so: Das ist die Nachricht blablablaHans Musterhans.muster@muster.de074 567 77 9914.1.2013

Also habe ich die einzelnen Informationshappen so aneinander gereiht Nachricht-Name-Telefonnummer-Email-Wunschdatum. Für meine Bedürfnisse reicht das.
 
PHP:
$message = $body .'\r\n'. $name .'\r\n\r\n Telefon:'. $phone .'\r\n eMail:Adresse'. $email .'\r\n Datum:'. $date
mail(EMPFAENGER, BETREFF, $messag, "From: ".ABSENDER."\nReplay-To: ".$email);


\r\n = <br> <== für eMails
 
Zurück