Như các bạn đã biết, hiện nay để hạn
chế tình trạng Spam mail, các nhà cung cấp hosting mặc định đã vô hiệu hóa chức
năng gửi mail với hàm mail(), bài này sẽ hướng dẫn các bạn cách gửi mail trên
web với giao thức SMTP.
thực hiện cấu hình SMTP
đầy đủ trong file test.php (file này chính là form gởi mail trên website) để
thực hiện gởi mail hợp lệ.
Tất nhiên, trước khi khai báo cấu
hình SMTP trong file PHP gởi mail (file test.php), bạn cần phải chắc
chắn tồn tại 1 account mail SMTP trên host để thực hiện cấu hình thành công (có
thể vào quản trị host để tạo mail này).
- PHP code sử dụng mail hosting :
<?php
require("class.phpmailer.php");
$mail
= new PHPMailer();
$SMTP_Host
= "mail.tenmiencuaban.com";
$SMTP_Port
= 25;
$SMTP_UserName
= "email@tenmiencuaban.com";
$SMTP_Password
= "matkhau";
$from
= $SMTP_UserName;
$fromName
= "Ten Nguoi Gui";
$to
= "diachiemailguiden@tenmien.com";
//
Luu y: $SMTP_UserName = $from
//******************************************************************************/
/*********
Hay bo comment di - Neu truong hop ban can gui toi nhieu mail khac
**************/
//******************************************************************************/
//
$addressCC = "email01@yahoo.com; email02@yahoo.com;";
//
$mail->AddCC($addressCC);
//******************************************************************************/
$mail->IsSMTP();
$mail->Host = $SMTP_Host;
$mail->SMTPAuth
= true;
$mail->Username
= $SMTP_UserName;
$mail->Password
= $SMTP_Password;
$mail->From = $from;
$mail->FromName
= $fromName;
$mail->AddAddress($to);
$mail->AddReplyTo($from,
$fromName);
$mail->WordWrap
= 50;
//$mail->AddAttachment("Duong
Dan File Dinh Kem");
$mail->IsHTML(true);
$mail->Subject =
"Tieu de Mail";
$mail->Body =
"Day la <b>noi dung mail</b>";
$mail->AltBody =
"This is the text-only body";
if(!$mail->Send())
{
echo "Mail gui that bai!
<p>";
echo "Thong bao loi: " .
$mail->ErrorInfo;
exit;
}
echo
"Mail gui thanh cong!";
?>
- PHP code sử dụng Gmail ( PHPMailer riêng cho Gmail ) :
<?
include
"class.phpmailer.php";
include
"class.smtp.php";
$mail
= new PHPMailer();
//******************************************************************************/
//
Trong truong hop gui mail GMAIL SMTP can duoc ho tro 2 yeu to sau:
//
1. php_openssl
//
2. Account Gmail enable POP trong Setting
//******************************************************************************/
$mail->IsSMTP();
// set mailer to use SMTP
$mail->Host
= "smtp.gmail.com"; // specify main and backup server
$mail->Port
= 465; // set the port to use
$mail->SMTPAuth
= true; // turn on SMTP authentication
$mail->SMTPSecure
= "ssl";
$mail->Username
= "username@gmail.com"; // your SMTP username or your gmail username
$mail->Password
= "passwordhere"; // your SMTP password or your gmail password
$from
= "fromemail@somemail.com"; // Reply to this email
$to="emailnguoinhan@domain.com";
// Recipients email ID
$name="MatBao
Technical Support"; // Recipient"s name
$mail->From
= $from;
$mail->FromName
= "Your From Name"; // Name to indicate where the email came from
when the recepient received
$mail->AddAddress($to,$name);
$mail->AddReplyTo($from,"MatBao
Technical Support");
$mail->WordWrap
= 50; // set word wrap
$mail->IsHTML(true);
// send as HTML
$mail->Subject
= "Test mail script from matbao.net";
$mail->Body
= "<b>Mail nay duoc goi bang phpmailer class. - <a
href="http://matbao.net">matbao.net</a></b>";
//HTML Body
$mail->AltBody
= "Mail nay duoc goi bang phpmailer class. - matbao.net"; //Text Body
//$mail->SMTPDebug
= 2;
if(!$mail->Send())
{
echo "<h1>Loi khi goi mail:
" . $mail->ErrorInfo . "</h1>";
}
else
{
echo "<h1>Send mail thanh
cong</h1>";
}
?>
0 comments:
Post a Comment