เกี่ยวกับการส่งเมล์ครับ

อันนี้โค๊ดส่งเมลครับ



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 เป็นค่าสมมุติครับ

05 ก.ย. 2555 5 2,521

ผมเจอปัญหาแล้วครับ เนื่องจาก domain เป็น domain .net ตอนนี้ผมส่ง SetFrom() ผมก็ใช้ usermail เป็น xxxx.net ทำให้เกิด error ครับ แต่ถ้าผมใช้ usermail เป็น gmail หรือ hotmail สามารถส่งได้ครับ



เหอๆ ทำไงดีครับ
#1

55++



ถ้าส่งบน server ตัวเอง ให้ กำหนด user+pass ให้ phpmailer ด้วยครับ (user+pass ของ mail account บน server)
#2

กำหนดแล้วครับ คือปัญหามันมีอยู่ว่า สมมุติว่าผมใช้ชื่อเว็บเป็น 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");

สามารถส่งผ่านครับ

#3

error ข้างต้น เป็น error ที่เกิดจาก mail server ครับ



ถ้าเป็น server ตัวเองลองตรวจสอบการตั้งค่าของ mail server ครับ อาจไม่ได้เปิดโหมด relaying ไว้ครับ
#4

ไม่ทราบเป็นที่อะไรเหมือนกันครับ ผมลองเปลี่ยนเป็น contact@boongbungy.net ได้นะครับ ไม่ได้อยู่ ยูเซอร์เดียวคือ info@boongbungy.net



indecision
#5
ความคิดเห็น
ไฟล์อัปโหลด ชนิด jpg, jpeg ขนาดไฟล์ไม่เกิน 1024
^