2013-05-15 3 views
-2

Я пробовал код ниже. В свое время код работал нормально. Я смог отправить электронные письма. Через несколько минут, когда я попробовал это снова, даже не изменив ничего, я получаю это сообщение об ошибке Unable to send email using PHP mail(). Your server might not be configured to send mail using this method.Codeigniter класс электронной почты не работает

Я не знаю, что случилось. В последнее время я сталкиваюсь со многими подобными ошибками с codeigniter.

public function email($message = NULL, $subject=NULL, $email=NULL){ 
     if(!isset($email)){ 
      $to = $this->session->userdata('email'); 
     }else{ 
      $to = $email; 
     } 
     $this->load->library('email'); 


     $this->email->from('[email protected]', 'Mydomain'); 
     $this->email->to($to); 

     $this->email->subject($subject); 
     $this->email->message($message);  

     $this->email->send(); 
    } 
+0

Структура не «умереть» со временем, ничего не меняя. Возможно ли, что ваш сеанс истек, а переменная '$ to' стала пустой? Это может вызвать ошибку. –

+0

Вы проверили серверные и php-конфигурации? – safarov

+0

@OliverNagy Даже если я передаю переменную электронной почты этой функции, я получаю ту же ошибку. – prakashchhetri

ответ

0

Я добавил следующие строки, и почта снова работает.

$config['protocol'] = 'sendmail'; 
      $config['mailpath'] = '/usr/sbin/sendmail'; 
      $config['charset'] = 'iso-8859-1'; 
      $config['wordwrap'] = TRUE; 

      $this->email->initialize($config); 
1

я сталкиваюсь с этой проблемой, и работать, и я найти ПОДХОД

только небольшое изменение в конфигурации электронной почты его работает 100%


$config['protocol'] = 'ssmtp'; 
$config['smtp_host'] = 'ssl://ssmtp.gmail.com'; 
Смежные вопросы