PHPMailer "$post->MsgHTML($msg)" Problem mit "$msg"
Ich Frage hier, weil ich nicht bekam eine Antwort von OVH (mein Hoster).
Hier ist das problem :
Wenn ich ersetzen $mail->MsgHTML($msg) mit $post->MsgHTML($_POST['Nachricht']), erhalte ich die mail sofort mit Header, name, email, Betreff und die Nachricht.
Aber wenn ich mir $msg statt, ich erhalte keine mail.
$msg='Name:'.$_POST['name'].'<br />
Email:'.$_POST['email'].'<br />
Subject: '.$_POST['subject'].'<br />
IP:'.$_SERVER['REMOTE_ADDR'].'<br /><br />
Message:<br /><br />
'.nl2br($_POST['message']).'
';
ganze PHP (von FancyAJAXForm):
<?php
/* config start */
$emailAddress = 'my mail address';
/* config end */
require "class.phpmailer.php";
foreach($_POST as $k=>$v)
{
if(ini_get('magic_quotes_gpc'))
$_POST[$k]=stripslashes($_POST[$k]);
$_POST[$k]=htmlspecialchars(strip_tags($_POST[$k]));
}
$msg='Name:'.$_POST['name'].'<br />
Email:'.$_POST['email'].'<br />
Subject: '.$_POST['subject'].'<br />
IP:'.$_SERVER['REMOTE_ADDR'].'<br /><br />
Message:<br /><br />
'.nl2br($_POST['message']).'
';
$mail = new PHPMailer();
$mail->IsMail();
$mail->AddReplyTo($_POST['email'], $_POST['name']);
$mail->AddAddress($emailAddress);
$mail->SetFrom($_POST['email'], $_POST['name']);
$mail->Subject = "Contact Form: ".mb_strtolower($_POST['subject'])." from ".$_POST['name']."";
$mail->MsgHTML($msg);
$mail->Send();
?>
- kannst du die Ausgabe von
var_dump($msg)
- Haben Sie überprüfen Sie den Rückgabewert von
Send()
? Haben Sie überprüfen Sie Ihre spam-Ordner? Hast du dir die Header der E-Mail haben, gehen Sie durch (sollte es eine info über den Weg der E-Mail dauert einige relay-Servern sind mehr wählerisch als andere über das, was Sie pass through)? - die var_dump($msg) zurück : "Name: Email: Betreff: IP: **my-ip Meldung:" DCoder: Als ich sagte, dass ich E-Mails empfangen, wenn ich ersetzen MsgHTML($msg) durch MsgHTML($_POST['Nachricht']);
- ich Schätze, es wird beendet durch einen spam-filter ist, versuchen Sie es zu senden, um ein Konto auf dem lokalen Computer und sehen, ob Sie die Nachricht erhalten
- Ein Konto auf dem lokalen Rechner? Weiß nich wie das geht... übrigens warte ich auf eine Antwort von OVH. Vielleicht wird es mehr Zeit für diese Art von E-mail-Verarbeitung durch den server? Vielen Dank für Eure Antworten, wenn jemand eine Idee hat-oder teilen will, ein Gedanke, er ist willkommen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ok ich hab das problem gelöst.
Habe ich ersetzen $mail->msgHTML($msg) mit den Körper-Funktion :
Funktioniert es perfekt!
Vielen Dank an alle Teilnehmer!
Ich weiß, das ist nicht gerade zeitnah, aber ich fand eine alternative Lösung:
Ich hatte ein ähnliches problem, aber ich hatte einige Seiten, die gearbeitet haben, und manche nicht. Ich habe versucht, Ihre Lösung, aber es gab mir die gleichen Ergebnisse.
Dann sah ich mir den html-Quellcode der E-Mails von den Seiten arbeiten, und bemerkte, dass ich aufgenommen hatte, die das öffnen und schließen von html-und body-tags, und ich hatte nicht eingeschlossen in die nicht funktionierenden Seiten. Das ist alles dauerte es, und die $post->msgHTML($msg) für mich gearbeitet.
Hoffe, das hilft.