혹시 몰라 제가 테스트 페이지에서 사용한 버전을 업로드하였습니다.
자신이 사용 중인 php 버전에 맞게 다운로드하시면 됩니다.
$mail->Host, Port, Username, Password
여기에는 사용하려는 SMTP 서비스에서 제공하는 정보를 입력하시면 됩니다.
네이버(네이버 웍스 아닙니다)의 경우 아이디만 써도 되고 아이디@naver.com 이렇게 메일 주소를 다 쓰셔도 되구요.
$mail->setfrom('이메일 주소', '이름');
여기에서 이메일은 바로 위 Username과 같게 써야 합니다(네이버는 아이디@naver.com). 물론 이름 부분은 달라도 됩니다만 메일 계정이 다를 경우 발송이 안 됩니다. 그리고 이름은 생략하셔도 메일은 발송됩니다. 생략했을 경우 메일 주소가 이름에 들어가도록 설정되어 있습니다.
$mail->addaddress('받는 사람 이메일 주소', 받는 사람 이름');
보이는 그대로 받는 사람 이메일 주소와 이름(생략 가능)을 입력하면 됩니다.
[참고1]setfrom, subject, addaddress, msghtml, send는 전체를 소문자로 해도 작동합니다. 검색을 해보면 어디엔 Send() 어디엔 send() 이렇게 되어 있습니다. 근데 둘 다 작동하니 아무 거나 쓰셔도 됩니다.
[참고2]Could not authenticate / the client was not authenticated 이런 오류 메시지가 나온다면 가장 먼저 확인하셔야 할 게 smtp host, port, username, password 이 4가지입니다. 지금 위에 써놓은 코드는 작동이 현재까지는 정상적으로 되는 것입니다.
[참고3]실제로 홈페이지에 적용할 땐 위에 $mail->SMTPDebug = 3이라고 된 부분을 주석으로 막으세요. 로그가 잔뜩 튀어나옵니다.
[참고4]코드 상에서 주석으로 막아둔 내용은 굳이 사용을 안 하셔도 됩니다. 우리나라에서 지메일, 네이버, 다음처럼 사람들이 좀 많이 사용하는 데는 위 주석을 안 풀어도 됩니다. 문제는 계속 정보를 맞게 썼는데도 계속 smtp 접속이 안 되는 경우가 있습니다. 이럴 때 주석을 풀어서 자신이 쓰는 smtp 서버에 맞게 수정해 보세요.
'Programming > PHP' 카테고리의 다른 글
인스타그램 피드 갖고 오기 - 1, 앱 만들기 (0) | 2022.12.28 |
---|---|
배열에서 값(value)으로 삭제하기 (0) | 2022.12.26 |
외부 SMTP를 이용해서 메일 보내기 - 1(feat. PHPMailer) (0) | 2022.11.25 |
[Codeigniter3]외부 라이브러리(ex PHPExcel) 연동하기(?) (0) | 2022.11.18 |
강제로 404 발생시키기 (0) | 2022.11.09 |