phpmailer ช่วยหน่อยนะครับ
require_once("admin/phpmailer/class.phpmailer.php");
$mail = new phpmailer();
$mail->IsSMTP(); // telling the class to use SMTP
try {
$mail->Encoding = "quoted-printable";
$mail->CharSet = "utf-8";
$mail->AddReplyTo($cfg_var["confirm_email"], $cfg_var["confirm_name"]);
$mail->AddAddress($cfg_var["regis_username"], $cfg_var["regis_username"]);
$mail->SetFrom($cfg_var["confirm_email"], $cfg_var["confirm_name"]);
$mail->Subject = $cfg_var["confirm_name"];
$mail->MsgHTML($cfg_var["Massage"]);
if($mail->Send())
{
echo "<script language=\"javascript\" type=\"text/javascript\">window.location='member_approve.php';</script>";
}else{
echo "<script language=\"javascript\" type=\"text/javascript\">window.location='member_fail.php';</script>";
}
มัน error อ่า
Parse error: parse error in C:\WM\www\www.ladivasjewelry.com\register.php on line 286
แต่ถ้าผมอัพขึ้นเซฟเวอจริง มัน ไม่ error นะ
$mail = new phpmailer();
$mail->IsSMTP(); // telling the class to use SMTP
try {
$mail->Encoding = "quoted-printable";
$mail->CharSet = "utf-8";
$mail->AddReplyTo($cfg_var["confirm_email"], $cfg_var["confirm_name"]);
$mail->AddAddress($cfg_var["regis_username"], $cfg_var["regis_username"]);
$mail->SetFrom($cfg_var["confirm_email"], $cfg_var["confirm_name"]);
$mail->Subject = $cfg_var["confirm_name"];
$mail->MsgHTML($cfg_var["Massage"]);
if($mail->Send())
{
echo "<script language=\"javascript\" type=\"text/javascript\">window.location='member_approve.php';</script>";
}else{
echo "<script language=\"javascript\" type=\"text/javascript\">window.location='member_fail.php';</script>";
}
มัน error อ่า
Parse error: parse error in C:\WM\www\www.ladivasjewelry.com\register.php on line 286
แต่ถ้าผมอัพขึ้นเซฟเวอจริง มัน ไม่ error นะ
error ตรงบรรทัด
try {
ผม copy มาจากบทความอาจารย์ ก็ยัง error ครับ
ถ้ามีผิดก็ให้ลองสังเกตุและแก้ไขดู ไม่บอกบทความไหนผมก็ไปดูไม่ถูก ถ้าบทความผิด ผมจะได้แก้บทความผม
บทความนี้ครับ
การส่งเมล์ด้วย PHPMailer
เธอต้องตรวจโค้ดเธอแล้ว ว่าผิดตรงไหน ผมไม่รู้บรรทัดที่ error ไม่รู้โค้ดทั้งหมดของหน้านั้น ไม่รู้ว่าเธอได้ copy โค้ดไปทุกบรรทัดหรือเปล่า เธอก็แก้ไขให้ถูกละกัน มันก็ผิด บรรทัด 286 นั่นแหละ
อ้อ ดูเหมือนเธอจะไม่ได้เขียนโค้ดตามตัวอย่างนะ ยังไงรบกวนช่วยแก้ไขให้เป็นตามตัวอย่างด้วย
echo "Message Sent OK"; // ส่งเมล์เรียบร้อย
}
catch (phpmailerException $e) {
echo $e->errorMessage(); // ข้อความ error จาก PHPMailer
}
catch (Exception $e) {
echo $e->getMessage(); // ข้อความ error จากระบบ
}
ความผิดพลาดของเธอมันอยู่อีตรงที่มันไม่เหมือนบทความนี่แหละ ยังไงก็แก้ไขให้เป็นไปตามบทความด้วยละกัน
ในบทความไม่เห็นมีตรงไหนบอกให้ใช้แบบนี้ เอามาจากไหน if($mail->Send())
ลองศึกษาเกี่ยวกับการใช้ try catch ดูว่ามีรูปแบบการใช้งานยังไง
$mail->Encoding = "quoted-printable";
$mail->CharSet = "utf-8";
$mail->AddReplyTo($cfg_var["confirm_email"], $cfg_var["confirm_name"]);
$mail->AddAddress($cfg_var["regis_username"], $cfg_var["regis_username"]);
$mail->SetFrom($cfg_var["confirm_email"], $cfg_var["confirm_name"]);
$mail->Subject = $cfg_var["confirm_name"];
$mail->MsgHTML($cfg_var["Massage"]);
if($mail->Send())
{
echo "<script language=\"javascript\" type=\"text/javascript\">window.location='member_approve.php';</script>";
}else{
echo "<script language=\"javascript\" type=\"text/javascript\">window.location='member_fail.php';</script>";
}
}
catch (phpmailerException$e) {
echo "<script language=\"javascript\" type=\"text/javascript\">alert('MAIL_SEND_ERROR';</script>"; //Pretty error messages from PHPMailer
}
catch (Exception $e) {
echo "<script language=\"javascript\" type=\"text/javascript\">alert('MAIL_SEND_ERROR';</script>";//Boring error messages from anything else!
}
โค้ดตรงส่งเมล์ของผมครับ
ผมคิดว่าน่าจะเป็นที่ ตัว webserver ของผม
ปกติผมใช้ WMServer
รันบน WMServer แล้วมันขึ้น error แต่พอผมอัพขึ้นเวปจริง มัน ไม่ขึ้น error
และตะกี้ผมลองโหลด appserv มาลง พอรันใหม่ดูก็ไม่ขึ้น error ละ
สรุปเป็นที่ WMServer หรอนี้ - - ใช้มาตั้งนาน
ขอบคุณครับอาจารย์
หรือว่า รูปแบบ try catch ของผมมันหรือครับชักไม่มันใจ