NHANWEB

Sử dụng PHPMailer kết hợp Gmail để gửi SMTP

Sau bài viết Sử dụng  Google Server để làm email theo domain của bạn tôi nhận được một số phản hồi của anh em về vấn đề code gửi email trên website (gửi dưới dạng SMTP và sử dụng tài khoản login theo domain) không chạy được nữa. Hôm nay chúng ta sẽ cùng khắc phục vấn đề này bằng cách cấu hình gửi email bằng SMTP sử dụng PHPMailer và sử dụng domain login là Gmail theo tên miền của bạn.

Chắc hẳn nhiều bạn lập trình viên đã sử dụng class PHPMailer nên tôi sẽ không nói về nó nữa nhé!

Bạn nào đã có class này trong máy rồi thì thôi, bạn nào chưa có thì download PHPMailer từ đây về máy.

Để có thể gửi email từ tài khoản login Gmail bạn cần phải có 1 phần Path của PHPMailer cho phép sử dụng  SSL (vì Gmail yêu cầu login bằng SSL mà :) ). Bạn có thể download path này về tài đây: Path PHPMailer using SSL.

Thiết lập gửi email bằng class SMTP

Sau khi download path trên về bạn chép đè (overwrite) lên file class.phpmailer.php của PHPMailer. Giờ chúng ta xem qua code thiết lập để gửi email nhé:
[code] <?php
require("class.phpmailer.php");
$mailer = new PHPMailer();
$mailer->IsSMTP();
$mailer->Host = ‘ssl://smtp.gmail.com:465’;
$mailer->SMTPAuth = TRUE;
$mailer->Username = ‘noreply[ @ ]nhanweb.com’; // Change this to your gmail adress
$mailer->Password = ‘here_password’; // Change this to your gmail password
$mailer->From = ‘noreply[ @ ]nhanweb.com’; // This HAVE TO be your gmail adress
$mailer->FromName = ‘fake’; // This is the from name in the email, you can put anything you like here
$mailer->Body = ‘This is the main body of the email’;
$mailer->Subject = ‘This is the subject of the email’;
$mailer->AddAddress(‘fake2@gmail.com’); // This is where you put the email adress of the person you want to mail
if(!$mailer->Send())
{
echo "Message was not sent<br/ >";
echo "Mailer Error: " . $mailer->ErrorInfo;
}
else
{
echo "Message has been sent";
}
?>
[/code] Một số thành phần bạn cần thay đổi tương ứng với tài khoản SMTP đã tạo là:

$mailer->Username = ‘noreply[ @ ]nhanweb.com’; // Change this to your gmail adress
$mailer->Password = ‘here_password’; // Change this to your gmail password
$mailer->From = ‘noreply[ @ ]nhanweb.com’; // This HAVE TO be your gmail adress

Bạn có thể tham khảo thêm bài viết Google Server để làm email để biết cách thiết lập hệ thống email cho công ty theo domain nhé.

Exit mobile version