回复 - 使用gmail smtp在codeigniter中发送电子邮件

时间:2013-02-21 23:38:29

标签: php codeigniter smtp gmail

我在我的网站上创建了一个联系表格,并且,为了将电子邮件发送到网站帐户(contact@mywebsite.com),我正在使用gmail smtp,使用我将收到的相同电子邮件消息。

因此,用户访问我的网站,点击联系页面,填写表格: 姓名,电子邮件,留言。

我发送的电子邮件包含以下代码:

        $config = Array(
        'protocol' => 'smtp',
        'smtp_host' => 'ssl://smtp.googlemail.com',
        'smtp_port' => 465,
        'smtp_user' => 'contact@mywebsite.com',
        'smtp_pass' => 'mypass',
        'mailtype' => 'html',
        'charset' => 'utf-8'
    );
    $this->load->library('email', $config);
    $this->email->set_newline("\r\n");

    $email = $this->input->post('email');
    $name = $this->input->post('name');
    $msg = $this->input->post('msg');
    $this->email->to('contact@mywebsite.com');
    $this->email->reply_to($email); //User email submited in form
    $this->email->from($email, $name);
    $this->email->subject('Conctact form');
    $this->email->message($msg);
    if ($this->email->send())
    {
        return true;
    } else
    {
        echo $this->email->print_debugger();
        return false;
    }

电子邮件发送到我的收件箱“contact@mywwebsite.com”,我可以正常阅读邮件,但是...当我点击“回复”而不是回复给我发送邮件的用户时,它回复“我”(联系@mywebsite.com)。

我已经配置了reply_to,以回复用户地址,而不是我的地址,但仍然会发送到contact@mywebsite.com。

如何解决这个问题? 我应该在代码或gmail设置中更改更多内容吗?

(PS。:我使用gmail界面直接从网站mail.google.com上阅读电子邮件)

提前谢谢。

- 此外,当我收到电子邮件时,它显示: “来自:'提交表格中的姓名'”

加: “发件人:'提交表单中的姓名'<'提交表单中的电子邮件'>” 喜欢它应该是。

2 个答案:

答案 0 :(得分:1)

Gmail会这样做,我不相信有任何类型的工作。

“发件人”地址只会是您用来发送电子邮件的帐户 - 您不能简单地“通过”gmail的服务器。

如果你需要这样做,你需要像SendGrid或你自己的smtp服务器

答案 1 :(得分:1)

我修复了通过另一个用户发送电子邮件... 我从me@mywebsite.com发送到contact@mywebsite.com,当我点击回复时,所选用户与发送邮件的用户相同。

GMail appearing to ignore Reply-To