2026, 새로운 도약을 시작합니다.

PHPMailer 를 이용한 email 발송

· 7년 전 · 3979 · 2

제홈페이지가 출처입니다.

http://story84.com/page.php?bbs=php&bbs_idx=15&pg=

https://github.com/PHPMailer/PHPMailer 

깃 허브에서 라이브러리를 다운 받습니다.

그리고 아래와 같이 사용합니다.

require_once("./PHPMailer/class.phpmailer.php");
 $mail                  = new PHPMailer();
 
 $mail->IsHTML(true);                             // HTML의 형식으로 보냄
 $mail->IsSMTP();
 $mail->SMTPSecure      = "ssl";
 $mail->Port            = 465;                    // 465 or 587 set the SMTP port for the GMAIL server
 $mail->Host            = "smtp.gmail.com";
 
 $mail->ContentType     = "text/html";
 $mail->Charset         = "utf-8";
 $mail->Encoding        = "base64";
 $mail->SMTPAuth        = true;                   // turn on  SMTP authentication
 
 $mail->Username        = 구글계정;    
 $mail->Password        = 구글계정SMTP비밀번호;   // SMTP 비밀번호

 
 $mail->setFrom($mail->Username, "보내는 사람");
 $mail->addAddress(받을이메일주소);               // 받을 이메일 주소
 
 $mail->Subject         = '제목';
 $mail->Body            = '내용';
         
 if(!$mail->Send()){
     echo "메일 전송에 실패 하였습니다.\n\n" . $mail->ErrorInfo;
 }
 else{
     echo "메일 전송에 성공 하였습니다.";
 }
 

붉은색 칠한 부분이 삽질한 부분입니다.

구글계정은 구글계정 이메일을 그대로 넣으면 되는데,

Password 부분은 그냥 구글 패스워드를 입력하면 될 줄 알았습니다.

그러나 역시 그렇게 단순한 문제가 아니었습니다.

삽질끝에 나를 도와준 것은 역시 스텍오버플로우 흉아였습니다.

http://stackoverflow.com/questions/17227532/gmail-530-5-5-1-authentication-required-learn-more-at 

위 내용중에 아래와 같은 답변이 있었습니다.

You need to go here https://security.google.com/settings/security/apppasswords

then select Gmail and then select device. then click on Generate. Simply Copy & Paste password which is generated by Google.

답변을 참고로 하여 구글 시큐리티로 접속을 하여 아래와 같이 설정을 하고,

시큐리티 패스워드 16값을 제공받아 위 소스코드에 적용하니 정상적으로 이메일이 발송됨을 확인하였습니다.

2109339710_1519969592.9786.png

|

댓글 2개

굿 아이디어입니다.
이거 소스 뒤져보니까... sendmail 사용금지업체가 늘어나고 있는데
업체에서는 sendmail쓰지마시오. 라고 적고.
phpmailer는 허용이요.
그런데 phpmailer는 sendmail을 쓴다는것..

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

개발자팁

개발과 관련된 유용한 정보를 공유하세요.
질문은 QA에서 해주시기 바랍니다.
번호 분류 제목 글쓴이 날짜 조회
5402 MySQL 6일 전 조회 24
5401 JavaScript 3주 전 조회 117
5400 MySQL 1개월 전 조회 225
5399 PHP 2개월 전 조회 471
5398 PHP 2개월 전 조회 355
5397 PHP 2개월 전 조회 287
5396 기타 5개월 전 조회 560
5395 PHP 6개월 전 조회 1,197
5394 MySQL 7개월 전 조회 794
5393 웹서버 9개월 전 조회 986
5392 1년 전 조회 1,314
5391 11개월 전 조회 1,320
5390 11개월 전 조회 1,114
5389 10개월 전 조회 1,033
5388 10개월 전 조회 1,173
5387 9개월 전 조회 963
5386 JavaScript 9개월 전 조회 1,151
5385 웹서버 9개월 전 조회 1,170
5384 JavaScript 10개월 전 조회 992
5383 기타 11개월 전 조회 1,418
5382 기타 11개월 전 조회 662
5381 JavaScript 11개월 전 조회 1,080
5380 기타 11개월 전 조회 834
5379 JavaScript 11개월 전 조회 832
5378 1년 전 조회 1,399
5377 기타 1년 전 조회 941
5376 jQuery 1년 전 조회 641
5375 jQuery 1년 전 조회 873
5374 기타 1년 전 조회 950
5373 MySQL 1년 전 조회 982
🐛 버그신고