2

私はこの問題に関連する多くの投稿を見てきました、私は与えられた指示をしましたが、常に同じエラーが発生します。

Code Igniter2.1.3を使用してSMTPGmailを送信したいのですが、これは次のコードです。

class Email extends CI_Controller{

function index(){

$config = Array(
'protocol'      => 'smtp',
'smtp_crypto'   => 'ssl',
'smtp_host'     => 'smtp.gmail.com',
'smtp_user'     => 'myEmail@gmail.com',
'smtp_pass'     => '***********',
'smtp_port'     => 25,
'mailtype'      => 'text',
'smtp_timeout'  =>  15, 
'charset'       => 'iso-8859-1'
);
$this->load->library('email', $config);

$this->email->set_crlf("\r\n");
$this->email->set_newline("\r\n");
$this->email->from("myEmail@gmail.com", "myName");
$this->email->to("myEmail@gmail.com");
$this->email->subject("Email Test");
$this->email->message("This is email test");

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

そして、エラーは常にこのようになります、

Message: fsockopen(): unable to connect to ssl://smtp.gmail.com:25 (A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. )

このエラーを修正するのを手伝ってください、ありがとう:)

4

1 に答える 1

2

サーバー構成のphp.iniファイルでsslを有効にする必要があり、Xamppサーバーを使用している場合は有効かどうかを確認できます。その中で、sslのPHP情報検索に移動します........。

削除する必要があります; extension = php_openssl.dllの前に、php.iniファイルのこの行。

OpenSSLを有効にする必要があります.......。

最近このエラーに直面しました。コードに小さな間違いがあります........

function sendMail()
{
    $config = Array(
  'protocol' => 'smtp',
  'smtp_host' => 'ssl://smtp.googlemail.com',
  'smtp_port' => 465,
  'smtp_user' => 'xxx@gmail.com', // change it to yours
  'smtp_pass' => 'xxx', // change it to yours
  'mailtype' => 'html',
  'charset' => 'iso-8859-1',
  'wordwrap' => TRUE
);

        $message = $this->load->view('upload_success','',TRUE);
        $this->load->library('email', $config);
      $this->email->set_newline("\r\n");
      $this->email->from('xxx@gmail.com'); // change it to yours
      $this->email->to('yyy@gmail.com');// change it to yours
      $this->email->subject('Resume from JobsBuddy for your Job posting');
      $this->email->message($message);
      if($this->email->send())
     {
      echo 'Email sent.';
     }
     else
    {
     show_error($this->email->print_debugger());
    }

}

これは、私が直面している問題を解決した後に使用している動作中のコードです。

于 2012-11-20T09:20:09.453 に答える