Php Codeigniter Html电子邮件显示Html源代码

Php Codeigniter Html电子邮件显示Html源代码,php,codeigniter,email,codeigniter-3,Php,Codeigniter,Email,Codeigniter 3,尝试发送电子邮件,但它的邮件格式是HTML源代码。 这是我的控制器- $config = Array( 'protocol' => 'SMTP', 'smtp_host' => 'hostname', 'smtp_port' => 'portname', 'smtp_user' => 'abn@gmail.com', 'smtp_pass' => '***',

尝试发送电子邮件,但它的邮件格式是HTML源代码。 这是我的控制器-

$config = Array(        
        'protocol' => 'SMTP',
        'smtp_host' => 'hostname',
        'smtp_port' => 'portname',
        'smtp_user' => 'abn@gmail.com',
        'smtp_pass' => '***',
        'smtp_timeout' => '4',
        'mailtype'  => 'html',
        'charset'   => 'utf-8'
    );
    $this->load->library('email', $config);
    $this->email->set_newline("\r\n");

    $this->email->from('devendra@gmail.com', 'ABC');
    $data = array(
         'userName'=> $this->input->post('email'),
         'password'=> $this->input->post('password'),
         'EmpName'=> $this->input->post('name'),
         'Number'=> $this->input->post('number'),
         'City'=> $this->input->post('city'),
         'State'=> $this->input->post('email'),
         'Address'=> $this->input->post('address')
             );
    $this->email->to($this->input->post('email')); 
    $Subject = 'User Login Details';
    $this->email->subject($Subject); 

    $body = $this->load->view('mailFormat.php',$data,TRUE);
    $this->email->message($body);   
    $this->email->send();
和电子邮件格式页面mailFormat.php

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Employee Registration</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
</head>
<body>
<div>
 <div style="font-size: 26px;font-weight: 700;letter-spacing: -0.02em;line-height: 32px;color: #41637e;font-family: sans-serif;text-align: center" align="center" id="emb-email-header"><img style="border: 0;-ms-interpolation-mode: bicubic;display: block;Margin-left: auto;Margin-right: auto;max-width: 152px" src="<?php echo base_url(); ?>/images/logo.png" alt="WFT" width="152" height="108"></div>

 <p style="Margin-top: 0;color: #565656;font-family: Georgia,serif;font-size: 16px;line-height: 25px;Margin-bottom: 25px">Hey  <?php echo $EmpName;?>,</p> 
<p>Email Id - <?php echo $userName; ?> </p>
<p>Password - <?php echo $password; ?> </p>
<p>Contact Number - <?php echo $Number; ?> </p>
<p>City - <?php echo $City; ?> </p>
<p>State - <?php echo $State; ?> </p>
<p>Address - <?php echo $Address; ?> </p>

</div>
</body>
</html>

雇员登记
/图像/logo.png“alt=“WFT”width=“152”height=“108”>

嘿,

电子邮件Id-

密码-

联络电话-

城市-

声明-

地址-

已发送电子邮件。但是显示HTML源代码的电子邮件格式。如何将其更改为HTML格式的电子邮件

$this->email->mailtype('html'); // This was incorrect, check below for what I used

这里有一个我以前用过的方法,希望对你有所帮助

    //Setting up the email
    $config = array(
    'protocol' => 'smtp',
    'smtp_host' => 'smtp.host.com',
    'smtp_port' => 587,
    'smtp_user' => '******',
    'smtp_pass' => '******',
    'mailtype'  => 'html',
    'charset'   => 'iso-8859-1'
);
    $this->load->library('email', $config);
    $this->email->set_newline("\r\n");

    $data = array(
    'email'    => $user->user_email,
    'username' => $user->user_first_name,
    'token'    => $token,
);
    $this->email->from('*******', 'Title');
    $this->email->to($user->user_email);

    $this->email->subject('***** - Password Reset Request');
    $html = $this->load->view('help/email/forgot_password', $data, true);
    $this->email->message($html);

    $this->email->send();
所以我认为首先将它设置为一个变量是我修复它所做的

这里有一个我以前用过的方法,希望对你有所帮助

    //Setting up the email
    $config = array(
    'protocol' => 'smtp',
    'smtp_host' => 'smtp.host.com',
    'smtp_port' => 587,
    'smtp_user' => '******',
    'smtp_pass' => '******',
    'mailtype'  => 'html',
    'charset'   => 'iso-8859-1'
);
    $this->load->library('email', $config);
    $this->email->set_newline("\r\n");

    $data = array(
    'email'    => $user->user_email,
    'username' => $user->user_first_name,
    'token'    => $token,
);
    $this->email->from('*******', 'Title');
    $this->email->to($user->user_email);

    $this->email->subject('***** - Password Reset Request');
    $html = $this->load->view('help/email/forgot_password', $data, true);
    $this->email->message($html);

    $this->email->send();

因此,我认为首先将其设置为变量是我修复它所做的。

您可以使用前面提到的邮件类型配置,但这里有更多详细信息以及如何正确操作

设置电子邮件首选项

有21种不同的首选项可用于定制电子邮件的发送方式 发送消息。您可以按照此处所述手动设置消息, 或通过存储在配置文件中的首选项自动执行,如所述 下:

通过将首选项值数组传递给 电子邮件初始化方法。下面是一个示例,说明如何设置 首选项:


如前所述,您可以使用邮件类型配置,但这里有更多详细信息以及如何正确操作

设置电子邮件首选项

有21种不同的首选项可用于定制电子邮件的发送方式 发送消息。您可以按照此处所述手动设置消息, 或通过存储在配置文件中的首选项自动执行,如所述 下:

通过将首选项值数组传递给 电子邮件初始化方法。下面是一个示例,说明如何设置 首选项:


我正在使用codeIgniter电子邮件库。您能告诉我如何使用上面的代码@Cakilops抱歉,我错了,那么@Snickers可能有一个answer@cakil您已将此问题标记为重复。我正在使用codeIgniter电子邮件库。您能告诉我如何使用上面的代码@Cakilops抱歉,我错了,那么可能是@Snickers拥有answer@cakil您已将此问题标记为重复。显示错误未定义方法CI_Email::mailtype()您可能需要对其进行初始化,CI 2.0.3以前存在错误,我不确定您正在运行哪个版本,但您可能可以尝试使用此$this->load->library('Email')设置邮件类型;$this->email->initialize(数组('mailtype'=>'html'));谢谢。我使用了相同的代码,但它对我不起作用。我在生产中使用过它,因此它在我这方面肯定有效,也许您的邮件服务器设置为带标签,或者配置为确保它只发送文本电子邮件。我想您是对的。我必须检查服务器配置。显示错误未定义的方法CI_Email::mailtype()您可能需要初始化它,CI 2.0.3曾经有一个bug,我不确定您正在运行哪个版本,尽管您可能可以尝试使用$this->load->library('email');$this->email->initialize(数组('mailtype'=>html')设置邮件类型;谢谢。我使用了相同的代码,但它对我不起作用。我在生产中使用过它,所以它在我这方面肯定有效,也许您的邮件服务器设置为带标签,或者配置为确保它只发送文本电子邮件。我想您是对的。我必须检查服务器配置。