อันนี้โค๊ดส่งเมลครับ
require_once (str_replace('function.php', 'class.phpmailer.php', __FILE__));
$mail = new PHPMailer(true);
$mail->IsSMTP(); // telling the class to use SMTP
try {
$mail->Encoding = "quoted-printable";
$mail->CharSet = "utf-8";
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->Host = "xxxxx";
$mail->Port = 25;
$mail->Username = "xx";
$mail->Password = "cc";
$mail->AddAddress("boongbungy@gmail.com","boongbungy@gmail.com");
$mail->SetFrom($mailform, $mailform);
$mail->Subject = $subject;
$mail->MsgHTML($msg);
$mail->Send();
return true;
}
catch (phpmailerException $e) {
echo 'phpmailerException '.strip_tags($e->errorMessage());
return false;
}
catch (Exception $e) {
echo 'Boring '.strip_tags($e->getMessage()); //Boring error messages from anything else!
return false;
}
ตอนส่งเกิด error ดังนี้ครับ
The following recipients failed: boongbungy@gmail.com
ปล
boongbungy@gmail.com มีอยู่จริงครับเพราะใช้อยู่
$mail->Host = "xxxxx";
$mail->Port = 25;
$mail->Username = "xx";
$mail->Password = "cc";
ตรงนี้ถูกหมดครับเพราะผมลองแก้เป็นค่าอื่น จะ error ว่า authen ไม่ผ่านครับ
xxxx เป็นค่าสมมุติครับ
require_once (str_replace('function.php', 'class.phpmailer.php', __FILE__));
$mail = new PHPMailer(true);
$mail->IsSMTP(); // telling the class to use SMTP
try {
$mail->Encoding = "quoted-printable";
$mail->CharSet = "utf-8";
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->Host = "xxxxx";
$mail->Port = 25;
$mail->Username = "xx";
$mail->Password = "cc";
$mail->AddAddress("boongbungy@gmail.com","boongbungy@gmail.com");
$mail->SetFrom($mailform, $mailform);
$mail->Subject = $subject;
$mail->MsgHTML($msg);
$mail->Send();
return true;
}
catch (phpmailerException $e) {
echo 'phpmailerException '.strip_tags($e->errorMessage());
return false;
}
catch (Exception $e) {
echo 'Boring '.strip_tags($e->getMessage()); //Boring error messages from anything else!
return false;
}
ตอนส่งเกิด error ดังนี้ครับ
The following recipients failed: boongbungy@gmail.com
ปล
boongbungy@gmail.com มีอยู่จริงครับเพราะใช้อยู่
$mail->Host = "xxxxx";
$mail->Port = 25;
$mail->Username = "xx";
$mail->Password = "cc";
ตรงนี้ถูกหมดครับเพราะผมลองแก้เป็นค่าอื่น จะ error ว่า authen ไม่ผ่านครับ
xxxx เป็นค่าสมมุติครับ
ผมเจอปัญหาแล้วครับ เนื่องจาก domain เป็น domain .net ตอนนี้ผมส่ง SetFrom() ผมก็ใช้ usermail เป็น xxxx.net ทำให้เกิด error ครับ แต่ถ้าผมใช้ usermail เป็น gmail หรือ hotmail สามารถส่งได้ครับ
เหอๆ ทำไงดีครับ
เหอๆ ทำไงดีครับ
55++
ถ้าส่งบน server ตัวเอง ให้ กำหนด user+pass ให้ phpmailer ด้วยครับ (user+pass ของ mail account บน server)
ถ้าส่งบน server ตัวเอง ให้ กำหนด user+pass ให้ phpmailer ด้วยครับ (user+pass ของ mail account บน server)
กำหนดแล้วครับ คือปัญหามันมีอยู่ว่า สมมุติว่าผมใช้ชื่อเว็บเป็น boongbungy.net นะครับ ตอนที่ผมส่งเมลให้คนอื่น ตรง ที่บอกว่าส่งมาจากใคร ผมก้อยากให่้ส่งมาจาก
info@boongbungy.net นะครับ ก้คือตรงนี้ $mail->SetFrom($mailform, $mailform); ก็จะได้เป็น $mail->SetFrom("info@boongbungy.net","info@boongbungy.net");
ถ้า ผมให้ info@boongbungy.net จะเกิดปัญหาดังที่แจ้งไว้ แต่ถ้าผมเปลี่ยนเป็น $mail->SetFrom("boongubngy@gmail.com","boongubngy@gmail.com");
สามารถส่งผ่านครับ
info@boongbungy.net นะครับ ก้คือตรงนี้ $mail->SetFrom($mailform, $mailform); ก็จะได้เป็น $mail->SetFrom("info@boongbungy.net","info@boongbungy.net");
ถ้า ผมให้ info@boongbungy.net จะเกิดปัญหาดังที่แจ้งไว้ แต่ถ้าผมเปลี่ยนเป็น $mail->SetFrom("boongubngy@gmail.com","boongubngy@gmail.com");
สามารถส่งผ่านครับ
error ข้างต้น เป็น error ที่เกิดจาก mail server ครับ
ถ้าเป็น server ตัวเองลองตรวจสอบการตั้งค่าของ mail server ครับ อาจไม่ได้เปิดโหมด relaying ไว้ครับ
ถ้าเป็น server ตัวเองลองตรวจสอบการตั้งค่าของ mail server ครับ อาจไม่ได้เปิดโหมด relaying ไว้ครับ
ไม่ทราบเป็นที่อะไรเหมือนกันครับ ผมลองเปลี่ยนเป็น contact@boongbungy.net ได้นะครับ ไม่ได้อยู่ ยูเซอร์เดียวคือ info@boongbungy.net