【问题标题】:Sending email with one or more recipient in codeigniter在 codeigniter 中与一个或多个收件人一起发送电子邮件
【发布时间】:2015-04-10 02:48:08
【问题描述】:

我的表格中有一个字段,其中包含我的用户的一些电子邮件。该字段看起来像这样:

| no_request |    addresed_to                                              |
+--------------------------------------------------------------------------+
|   001      |    email1@domain.com, email2@domain.com, email3@domain.com  |

我通过 codeigniter php 使用 MVC 概念。所以我创建了这样的模型:

public function sendEmail($no_request){
    $this->db->select('approved_to');
    $this->db->where('no_request', $no_request);
    $query = $this->db->get('tbl_requestfix');

    return $query->row();
}

这是我的控制器:

public function sendRequestKeAtasan($name, $email_user, $addressed_to, $complaint) {
    $config = Array(
        'protocol' => 'smtp',
        'smtp_host' => 'smtp.XXX.XXX,
        'smtp_port' => 25,
        'smtp_user' => $email_, 
        'mailtype' => 'html',
        'charset' => 'iso-8859-1',
        'wordwrap' => TRUE
    );

    $message = date("h:i:s");
    $this->load->library('email', $config);
    $this->email->set_newline("\r\n");
    $this->email->from($email_user, $name);
    $this->email->to($addressed_to);
    $this->email->subject("$no_request);
    $this->email->message("$keluhan");

    if ($this->email->send()) {
        echo 'Email sent.';
    } else {
        show_error($this->email->print_debugger());
    }
}

如您所见,在我的表格中,我有 3 个电子邮件地址。那么,我怎样才能将电子邮件发送给 3 个用户呢?

【问题讨论】:

标签: php codeigniter email


【解决方案1】:

作为提供的 codeigniter 文档,

设置收件人的电子邮件地址。可以是单个电子邮件, 逗号分隔的列表或数组

例如:

$this->email->to('someone@example.com');
$this->email->to('one@example.com, two@example.com, three@example.com');
$this->email->to(array('one@example.com', 'two@example.com', 'three@example.com'));

在这种情况下,您使用逗号分隔值保存电子邮件地址。所以,你可以这样发送。

$result = $this->your_model->sendEmail($no_request);
sendRequestKeAtasan($name, $email_user, $result->addressed_to, $complaint);

希望对你有用。

【讨论】:

    【解决方案2】:

    您可以将收件人电子邮件添加到数组中并将其传递给to参数

    检查一下

    Sending mail to multiple recipients with sendgrid and codeigniter

    【讨论】:

      【解决方案3】:

      只需用“,”分解您的 $addressed_to 以创建数组并将其传递给 CI 电子邮件类的“to”方法。这是一个示例;

      $this->email->to(explode(","$addressed_to));
      

      【讨论】:

        猜你喜欢
        • 2016-12-11
        • 2019-03-08
        • 1970-01-01
        • 2018-02-06
        • 2012-05-18
        • 1970-01-01
        • 2019-04-26
        相关资源
        最近更新 更多