• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Frage " oder ' ?

annsen

Mitglied
Hallo,

ich bin grad dabei mich mit der "mail"-Funktion zu beschäftigen und lese als Hilfestellung parallel mehrere Bücher und Schnipsel im Netz. Das hat dazu geführt, dass ich aktuell etwas Kopfchaos habe... vielleicht kann ja jemand helfen (und erklären!)?

Zuerst einmal - ich habe mir eine Variable erstellt, um eine Zeitangabe zu erhalten, die ich dann in die Mail einfügen kann. Funktioniert das so??

Code:
$tagname = array ("Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag");

$tag = date("w");
$datum = date("d.m.Y");
$zeit = date("H:i:s");

$tag_datum_zeit = "Anfrage gesendet am $tagname[$tag], den $datum um $zeit Uhr.";

Außerdem versuche ich Daten in der Variablen für den Mailtext ($mail_text) zusammen zu führen:

Code:
$mail_text = "Folgende Anfrage ist über das Kontaktformular eingegangen: \n";
$mail_text .= "Nachricht: $_POST['nachricht'] \n";
$mail_text .= "$tag_datum_zeit";

In der Zeile mit der $_POST-Variable wird ein Fehler ausgewiesen - und ich weiß nicht warum. Muss ich das vielleicht verketten a la ..."Nachricht:" . $_POST['nachricht'] "\n";... ? Die doppelten Anführungszeichen stellen doch eigentlich sicher, dass die Variable erkannt wird, oder?
 
Werbung:
Hallo,

ich bin grad dabei mich mit der "mail"-Funktion zu beschäftigen und lese als Hilfestellung parallel mehrere Bücher und Schnipsel im Netz. Das hat dazu geführt, dass ich aktuell etwas Kopfchaos habe... vielleicht kann ja jemand helfen (und erklären!)?

Zuerst einmal - ich habe mir eine Variable erstellt, um eine Zeitangabe zu erhalten, die ich dann in die Mail einfügen kann. Funktioniert das so??

Code:
$tagname = array ("Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag");

$tag = date("w");
$datum = date("d.m.Y");
$zeit = date("H:i:s");

$tag_datum_zeit = "Anfrage gesendet am $tagname[$tag], den $datum um $zeit Uhr.";

Außerdem versuche ich Daten in der Variablen für den Mailtext ($mail_text) zusammen zu führen:

Code:
$mail_text = "Folgende Anfrage ist über das Kontaktformular eingegangen: \n";
$mail_text .= "Nachricht: $_POST['nachricht'] \n";
$mail_text .= "$tag_datum_zeit";

In der Zeile mit der $_POST-Variable wird ein Fehler ausgewiesen - und ich weiß nicht warum. Muss ich das vielleicht verketten a la ..."Nachricht:" . $_POST['nachricht'] "\n";... ? Die doppelten Anführungszeichen stellen doch eigentlich sicher, dass die Variable erkannt wird, oder?

Code:
$mail_text = "Folgende Anfrage ist über das Kontaktformular eingegangen: \n";
$mail_text .= "Nachricht: {$_POST['nachricht']} \n";
$mail_text .= "$tag_datum_zeit";

Einen Fehler sollte das allerdings so oder so nicht werfen.
 
ich bin grad dabei mich mit der "mail"-Funktion zu beschäftigen
Da haben wir schon den ersten Fehler. Die Mail-Funktion von PHP ist eine Krücke, deshalb verwende lieber eine fertige Mailer-Klasse w.z.B. den phpMailer. Damit kommen Mails auch an und werden nicht so schnell als Spam eingestuft, mal angesehen von den anderen Vorteilen einer Mailer-klasse
 
Werbung:
Mit dem PHPMailer hat es bisher ganz gut funktioniert aber:


Sollte also jemand Hinweise haben, warum das so nicht funktioniert - ich habe noch keine Lösung gefunden.

Einfach mal error_reporting aktivieren bzw. einfaches Debugging anwenden, dann sollte der Fehler schnell gefunden sein. An deinen Codesnippets ist jetzt soweit kein Fehler zu erkennen.
 
Zurück
Oben