2012-06-21 11 views
16

भेजकर PHPmailer मैं ईमेल भेजने के लिए PHPmailer का उपयोग कर रहा हूं।एचटीएमएल कोड

मैं भी इस्तेमाल किया है एचटीएमएल = सच सामग्री प्रकार

$mail = new PHPMailer(); 

$mail->IsSMTP();     // send via SMTP 
$mail->Host  = $Host; 
$mail->SMTPAuth = true;    // turn on SMTP authentication 
$mail->Username = $Username; 
$mail->Password = $Password; 

$mail->From  = $From; 
$mail->FromName = $FromName; 

    $mail->AddAddress($To , $ToName); 

$mail->WordWrap = 50;    // set word wrap 
    $mail->Priority = 1; 
$mail->IsHTML(true); 
$mail->Subject = $Subject; 
$mail->Body  = $Body; 

एक बार ईमेल भेजा है मैं देख सामग्री के बजाय वास्तविक HTML कोड नीचे

enter image description here

की जाँच करें ** नहीं सुनिश्चित करें कि समस्या क्या है **

+0

काम करता है क्या आप उस कोड को दिखा सकते हैं जिसका उपयोग आप शरीर को भरने के लिए कर रहे हैं? –

+0

क्या आप '$ मेल-> बॉडी ($ your_html_html)' कर रहे हैं? –

+0

@MarcB हाँ मैं $ मेल-> बॉडी = $ बॉडी का उपयोग कर रहा हूं; – user580950

उत्तर

49

उदाहरण Body प्रोप के बाद isHTML() विधि को कॉल करना erty (मेरा मतलब है $mail->Body) निर्धारित किया गया है मेरे लिए समस्या हल:

$mail->Subject = $Subject; 
$mail->Body = $Body; 
$mail->IsHTML(true);  // <=== call IsHTML() after $mail->Body has been set. 
+0

से आता है यह सही है लेकिन आपको '$ मेल-> ClearCustomHeaders();' $ मेल-> ISHTML (सत्य) 'के बाद कभी भी कॉल नहीं करना चाहिए। 'ClearCustomHeader' आपके ईमेल HTML स्वरूपण से छुटकारा पाता है और इसके बजाय प्राप्तकर्ता HTML स्रोत कोड प्राप्त करेगा। –

-1

केवल आपके IsHTML() फ़ंक्शन करने के लिए एक तर्क के रूप सच पारित करने के लिए की जरूरत है।

2

या आप उपयोग कर सकते हैं आप अभी भी समस्या है, तो इस

$mail->Body = html_entity_decode($Body); 
4

// माफ करना मेरी आरंभिक अंग्रेज़ी

है msgHTML() विधि है, जो, भी, IsHTML फोन()।

मानव संसाधन विकास मंत्री ... नाम IsHTML भ्रामक है ...

/** 
* Create a message from an HTML string. 
* Automatically makes modifications for inline images and backgrounds 
* and creates a plain-text version by converting the HTML. 
* Overwrites any existing values in $this->Body and $this->AltBody 
* @access public 
* @param string $message HTML message string 
* @param string $basedir baseline directory for path 
* @param bool $advanced Whether to use the advanced HTML to text converter 
* @return string $message 
*/ 
public function msgHTML($message, $basedir = '', $advanced = false) 
-2

पसंद करते हैं GET विधि का उपयोग कर अपने अलग html फ़ाइल के अंदर अपने html कोड इस पेस्ट।

$mail->IsHTML(true);         
    $mail->WordWrap = 70;         
    $mail->addAttachment= $_GET['addattachment']; $mail->AltBody 
    =$_GET['AltBody']; $mail->Subject = $_GET['subject']; $mail->Body = $_GET['body']; 
-2

आपको बस इतना करना है कि केवल $ मेल-> ISHTML (सत्य) जोड़ें; कोड यह ठीक काम करता है ..

0

संस्करण 5.2.7 में मैं इस का उपयोग सादे पाठ भेजने के लिए करने के लिए: $mail->set('Body', $Body);

-2

क्या लगभग मुझे मार डाला, मैं परिभाषित $ मेल> AltBody था। इसे हटाने के बाद, सबकुछ

संबंधित मुद्दे