CodeIgniter의 이메일 라이브러리를 사용하여 이메일을 보내려고합니다. 이것이 제가 작성한 코드입니다.
$email_config = array(
'protocol' => 'smtp',
'smtp_host' => ' ssl://smtp.gmail.com',
'smtp_port' => '465',
'smtp_user' => '[email protected]',
'smtp_pass' => '**********',
'mailtype' => 'html',
'newline' => "\r\n",
'charset' => 'iso-8859-1',
"wordwrap" => true
);
$this->CI->load->library('email', $email_config);
$this->CI->email->from('[email protected]', 'invoice');
$this->CI->email->to('[email protected]', "User");
$this->CI->email->subject('Invoice');
$this->CI->email->message('Test');
$this->CI->email->send();
echo $this->CI->email->print_debugger();
오류 : 이것은 내가 받고있는 오류입니다.
다음 SMTP 오류가 발생했습니다. 0 php_network_getaddresses : getaddrinfo 실패 : 이름 또는 서비스를 알 수 없음 데이터를 보낼 수 없음 : AUTH LOGIN AUTH LOGIN 명령을 보내지 못했습니다. 오류 : 데이터를 보낼 수 없음 : MAIL FROM : 보낸 사람 : 다음 SMTP 오류가 발생했습니다. 데이터를 보낼 수 없습니다 : RCPT TO : to : 다음 SMTP 오류가 발생했습니다. 데이터를 보낼 수 없습니다 : DATA 데이터 : 다음 SMTP 오류가 발생했습니다. : 데이터를 보낼 수 없음 : User-Agent : CodeIgniter 날짜 : Sun, 21 Jun 2015 05:52:56 +0600 From : "invoice"반환 경로 :받는 사람 : [email protected] 제목 : =? iso-8859 -1? Q? Invoice? = 답장 : "[email protected]"X-Sender : [email protected] X-Mailer : CodeIgniter X-Priority : 3 (일반) 메시지 -ID : < [email protected]> Mime 버전 : 1.0 콘텐츠 유형 : multipart / alternative; 경계 = "
다음 SMTP 오류가 발생했습니다. PHP SMTP를 사용하여 이메일을 보낼 수 없습니다. 이 방법을 사용하여 메일을 보내도록 서버가 구성되지 않았을 수 있습니다. 사용자 에이전트 : CodeIgniter 날짜 : 2015 년 6 월 21 일 일요일 05:52:56 +0600 보낸 사람 : "invoice"반환 경로 :받는 사람 : [email protected] 제목 : =? iso-8859-1? Q? Invoice ? = 답장 : "[email protected]"X-Sender : [email protected] X-Mailer : CodeIgniter X-Priority : 3 (일반) 메시지 -ID : <[email protected]> Mime 버전 : 1.0
콘텐츠 유형 : 멀티 파트 / 대안; boundary = "B_ALT_5585fcd8c643b"
MIME 형식의 다중 부분 메시지입니다. 이메일 애플리케이션이이 형식을 지원하지 않을 수 있습니다.
--B_ALT_5585fcd8c643b 콘텐츠 유형 : text / plain; charset = iso-8859-1 콘텐츠 전송 인코딩 : 8 비트
테스트
--B_ALT_5585fcd8c643b 콘텐츠 유형 : text / html; charset = iso-8859-1 Content-Transfer-Encoding : 인용 인쇄 가능
테스트
--B_ALT_5585fcd8c643b--
질문 : 이메일을 보낼 수있었습니다. 그런 다음 OS와 램프 서버를 다시 설치했지만 이제는 할 수 없습니다. 내가 무엇을 잘못하고 있지?
CI의 이메일에 sendmail을 사용합니다. 메일 보내기를 사용하기 전에 CI에서 몇 가지 구성을 수행해야합니다.
먼저 system / libraries / Email.php로 이동하여 다음을 변경하십시오.
class CI_Email {
var $useragent = "CodeIgniter";
var $mailpath = "/usr/sbin/sendmail"; // Sendmail path
var $protocol = "sendmail"; // mail/sendmail/smtp
var $smtp_host = "mail.blah-blah.com"; // SMTP Server.
.....
}
그런 다음 이메일을 보내는 방법을 만듭니다.
public function send_mail($email, $subject, $message){
//$this->load->library( 'email' );
$this->email->from( '[email protected]', 'blah-blah.com' );
$this->email->to( $email);
$this->email->subject( $subject );
$this->email->message( $message );
$this->email->send();
echo $this->email->print_debugger();
}
그게 다야. 이 send_mail
방법을 사용하여 지금 이메일을 보낼 수 있습니다 .
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다