2014-09-24 51 views
-2
 <?php 
    $subject = $this->language->get('text_subject'); 
    $message = "este es el mensaje"; 
    $html = "<html><head><title>Documento sin título</title></head><table> 
     <tr> 
     <td>Ticket</td> 
     <td>Status</td> 
     <td>action</td> 
     <td>account type</td> 
     </tr> 
     <tr> 
     <td>1</td> 
     <td>COMPLETED</td> 
     <td>CREATE</td> 
     <td>DEMO</td> 
     </tr> 
     </table><body></body></html>" 

       $mail = new Mail(); 
       $mail->protocol = $this->config->get('config_mail_protocol'); 
       $mail->parameter = $this->config->get('config_mail_parameter'); 
       $mail->hostname = $this->config->get('config_smtp_host'); 
       $mail->username = $this->config->get('config_smtp_username'); 
       $mail->password = $this->config->get('config_smtp_password'); 
       $mail->port = $this->config->get('config_smtp_port'); 
       $mail->timeout = $this->config->get('config_smtp_timeout'); 


       $mail->setTo($customer_query->row['email']); 
       $mail->setFrom($this->config->get('config_email')); 
       $mail->setSender($this->config->get('config_name')); 
       $mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8')); 
       $mail->setHtml($html); 
       $mail->setText(html_entity_decode($message, ENT_QUOTES, 'UTF-8')); 



       $mail->send();?> 

我有这样的代码来发送电子邮件PHP,$html包含代码的HTML来发送邮件,但仅出现在HTML代码和文本不会出现。代码中有错误?发送电子邮件与PHP和HTML内容

+0

你使用哪个类来发送电子邮件。必须有一些选项可以设置发送的HTML电子邮件。和$ html我希望是在我的脚本中定义的 – 2014-09-24 05:51:01

+0

我修改了代码 – 2014-09-24 05:55:18

+0

文本正文设置为$ message,这只是“este es el mensaje” - 是你想发送什么? – PeterK 2014-09-24 06:09:47

回答

0

您正在设置要发送的HTML和TXT消息。这意味着两封邮件都会发送出去,并且根据您的电子邮件客户端只显示一封邮件。如果您的电子邮件客户端可以显示HTML邮件并且已打开,则只显示HTML邮件,否则只显示TXT邮件。 HTML和TXT消息不应包含包含不同的内容,但相同 - 一个是HTML格式,另一个是不支持HTML格式的客户端的普通TXT替换。

在这种情况下,如果您要发送HTML消息像上面的TXT替代应该在

$message = "Documento sin título\r\n"; 
$message .= "Ticket:  1\r\n"; 
$message .= "Status:  COMPLETED\r\n"; 
$message .= "action:  CREATE\r\n"; 
$message .= "account type: DEMO\r\n"; 

也许你需要的是发送两封电子邮件(也许到两个不同的用户?)...