2015-02-20 5 views
1

Я пытаюсь отправить электронное письмо с помощью codeigniter.Codeigniter email - браузер продолжает загружаться

<?php 
class email_page extends CI_Controller{ 
    function __construct(){ 
     parent::__construct(); 
    } 

    function index(){ 
     $config = Array(
       'protocol'=>'smtp', 
       'smtp_host' => 'ssl://smtp.googlemail.com', 
       'smtp_port' => '465', 
       'smtp_user' => '[email protected]', 
       'smtp_pass' => 'password' 
      ); 

     $this->load->library('email', $config); 
     $this->email->set_newline('\r\n'); 

     $this->email->from('[email protected]','Sender name'); 
     $this->email->to('[email protected]'); 
     $this->email->subject('Test mail'); 
     $this->email->message('This is a test mail from codeigniter'); 

     if($this->email->send()){ 
      echo "Your mail was sent successfully!!!"; 
     } 
     else{ 
      show_error($this->email->print_debugger()); 
     } 
    } 
} 

Страница продолжает загружаться и не дает никаких результатов. Код выглядит хорошо для меня. Есть ли ошибки? Благодаря

+0

Правильно ли вы используете учетную запись SMTP? у вас есть журнал ошибок? –

+0

Вместо gmail используйте http://mandrill.com/ –

+0

Я получил эту ошибку после некоторого времени. Фатальная ошибка: максимальное время выполнения 300 секунд превышено в C: \ xampp \ htdocs \ Codeigniter \ system \ libraries \ Email.php on line 1870 – prdtuty

ответ

1

Я сам нашел ответ.

$this->email->set_newline('\r\n'); 

Изменена выше строку

$this->email->set_newline("\r\n"); 

Я не знаю, как это может произойти.

+0

Какая разница между этими строками? –

0

я нашел ошибку, просто изменить порт 25

function test(){ 
    $config = Array(
      'protocol'=>'smtp', 
      'smtp_host' => 'smtp.gmail.com', 
      'smtp_port' => '25', 
      'SMTPAuth' => true, 
      'smtp_user' => '[email protected]', 
      'smtp_pass' => 'password' 
     ); 

    $this->load->library('email', $config); 
    //$this->email->set_newline('\r\n'); 

    $this->email->from('[email protected]','Sender name'); 

    $this->email->to('[email protected]'); 
    $this->email->subject('Test mail'); 
    $this->email->message('This is a test mail from codeigniter'); 
    //print_r($this->email);exit; 
    if(! $this->email->send()){ 
    //print_r("234");exit; 
     echo "Your mail was sent successfully!!!"; 
    } 
    else{ 
    //print_r("345");exit; 
     show_error($this->email->print_debugger()); 
    } 
} 
+0

Я изменил его, и он начинает работать на моем конце. –

+0

Не забудьте принять правильный ответ. –

1

изменения настройки учетной записи здесь

https://www.google.com/settings/security/lesssecureapps