2

我正在尝试使用 html 表单向客户发送电子邮件。

这是控制器文件。

$email = 'jc2332@gmail.com';

$title = 'Introducing our new product!';

$msg = $this->load->view('admin/email_new_version', '', true);

$config['mailtype'] = 'html';
$this->load->library('email', $config);

$this->email->from('cs@example.com', 'company');
$this->email->to($email); 

$this->email->subject($title);
$this->email->message($msg);    

$this->email->send();

对我来说看起来不错,但是当我收到邮件时 html 不起作用。

4

4 回答 4

2

尝试使用此配置并尝试在单独的命令中初始化电子邮件库:

$this->load->library('email');
$config['charset'] = 'utf-8';
$config['wordwrap'] = TRUE;
$config['mailtype'] = 'html';
$this->email->initialize($config);

这应该工作!

于 2012-06-28T09:04:47.337 回答
1

代码看起来不错。当您说“我收到邮件时html不起作用”时,您是什么意思?你在什么样的环境中托管它?

让我们尝试简单的调试:

1)检查是否正在加载模板:

echo $this->load->view('admin/email_new_version', '', true);
die();

2)验证您的 HTML。

3) 尝试在crlf,newlinecharset首选项中设置不同的值。

于 2012-06-28T08:25:10.210 回答
1
  1. 转到系统/库/email.php
  2. 检查 $mailtype 变量值
  3. 设置 $mailtype='html'
于 2016-06-23T06:39:54.137 回答
0

我认为要关注的主要领域是您是否使用本地设置(如 wamp/lamp)或任何其他本地服务器安装,其中您使用常规 adsl 连接且端口不在局域网之外服务。

您需要在托管服务提供商中托管您的项目或打开您的端口以便能够服务于互联网(如果不采取安全预防措施并且没有运行邮件服务器的情况下不建议使用后者),以便使用电子邮件-> send() 函数正常工作

于 2012-06-28T08:36:04.447 回答