无法发送电子邮件Codeigniter

无法发送电子邮件Codeigniter,codeigniter,ssl,smtp,sendmail,Codeigniter,Ssl,Smtp,Sendmail,我正在尝试发送电子邮件,它在本地主机上正常工作 当我把它放在服务器上时,它会给我警告 我用的是codeigniter这是代码 公共函数send_me($from、$name、$toEmail、$subject、$msg){ 和警告是 遇到一个PHP错误 严重性:警告 消息:fsockopen()[function.fsockopen]:无法连接到ssl://smtp.googlemail.com:465 (连接超时) 文件名:libraries/Email.php 电话号码:1689 遇到一个P

我正在尝试发送电子邮件,它在本地主机上正常工作 当我把它放在服务器上时,它会给我警告 我用的是codeigniter这是代码

公共函数send_me($from、$name、$toEmail、$subject、$msg){

和警告是

遇到一个PHP错误

严重性:警告

消息:fsockopen()[function.fsockopen]:无法连接到ssl://smtp.googlemail.com:465 (连接超时)

文件名:libraries/Email.php

电话号码:1689 遇到一个PHP错误

严重性:警告

消息:fwrite()期望参数1是给定的布尔资源

文件名:libraries/Email.php


行号:1846

我已经回答了几个类似的问题。如果您的本地电子邮件工作正常,请按照以下步骤操作:

要在CodeIgniter中使用Google SMTP,您需要对您的Gmail帐户设置进行2(两)次更改:(注意,请注意,现在攻击者更容易侵入您的帐户-Google说)

  • 设置两步验证
  • 允许不太安全的应用程序:打开(或启用)
  • 现在使用
    “smtp\U主机”
    作为
    ssl://smtp.gmail.com
    而不是
    smtp.googlemail.com


    希望即将到来的用户也能获得此帮助。

    使用$this->email->initialize($config);而不是在加载时传递它。你能解释一下raheel shansimpledo其他步骤$this->load->library('email');然后使用$this->email->initialize($config);因为它在加载和传递过程中会产生问题在我居住时查看本地it工作它会给出相同的问题错误尝试改变你的答案而不是剪切和粘贴你的两个答案中的相同答案,而不考虑操作的特殊性我在SO是新手。我在这里得到了很多解决方案,因此我决定贡献我的经验我会记住你的建议。
        $config = Array(
            'protocol'  => 'smtp',
            'smtp_host' => 'ssl://smtp.googlemail.com',
            'smtp_port' => 465,
            'smtp_user' => 'xxxxxxxxxxx',//user name herer
            'smtp_pass' => 'xxxxxxxx', //password hre
            'mailtype'  => 'html',
            'charset'   => 'iso-8859-1',
            'wordwrap'  => TRUE
        );
        $this->load->library('email', $config);
        $this->email->set_newline("\r\n");
        $this->email->from($from,$name);
        $this->email->to($toEmail);//to address here
        $this->email->subject($subject);
        $this->email->message($msg);
        if($this->email->send())
            return true;
        else
            return false;
    }