อยากทราบว่าทำไม Email ที่เราเขียนส่ง ถึงมี 2 ฉบับใน inbox

อธิบายนะค่ะ คือว่าได้ทำการเขียน Code ส่ง Email ค่ะ แต่ว่า สงสัยว่า ทำไม กดส่งแล้ว มันเข้าไปอยู่ใน inbox ปลายทาง เป็นจำนวน 2 ฉบับ เลยอ่ะค่ะ หรือ มันทำงานส่งไป 2 ครั้ง เนื่องจาก การ ใช้ $re = mysql_fetch_array($q);  ตรงนี้หรือป่าวค่ะ ขอบคุณค่ะ




    <? 


    require_once("PHPMailer_v5.1/class.phpmailer.php");


    require_once('includes/functions.inc.php');


    $conn = new connection;


    $query = new Query();


    $conn->fncConnect();


    $conn->fncSelectDB();


    $mail = new PHPMailer(true);


     


    if($_POST['uname'] != '' and $_POST['ename'] != '')


    {


     


    $sql = "select C_Username,C_Email,C_Password,C_Name from tb_customer where C_Username='$_POST[uname]' AND C_Email='$_POST[ename]'";


    $q = mysql_query($sql);


    $re = mysql_fetch_array($q);


     


            $mail->IsSMTP(); // telling the class to use SMTP


            //$mail->Timeout = 10;


                $mail->Encoding = "quoted-printable";


                $mail->CharSet = "utf-8";


              


                // send mail by gmail


                $mail->SMTPAuth = true; // enable SMTP authentication


                $mail->SMTPSecure = "ssl"; // sets the prefix to the servier


                $mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server


                $mail->Port =  465; // set the SMTP port for the GMAIL server


                $mail->Username = "admin@gmail.com"; // GMAIL username


                $mail->Password = "****"; // GMAIL password


               


                //$mail->AddReplyTo($mailform, $mailform);


                $mail->AddAddress($_POST['ename'], $re['C_Username']);


                $mail->SetFrom("admin@gmail.com", "no-reply_admin@tms.com");


                $mail->Subject = "Your Forgot Password";


    //$mail->Body .= "คุณทำการร้องขอ ลืมรหัสผ่าน ข้อมูลของคุณ มีดังนี้";


    // $mail->Body .= "Username: ".$_POST['uname'];


    // $mail->Body .= " Password: ".$re['C_Password'];


    $msg = "<p>คุณทำการร้องขอ ลืมรหัสผ่าน ข้อมูลของคุณ มีดังนี้</p><br><p>Username: ".$_POST['uname']."</p><br><p>Password: ".$re['C_Password']."</p>";


                $mail->MsgHTML($msg);


                $mail->Send();


          if(!$mail->Send()) {


      echo "Mailer Error: " . $mail->ErrorInfo;


    } else {  echo "โปรดตรวจสอบรหัสผ่านที่บัญชีอีเมล์คุณอีกครั้ง!"; }


    }


    else


    {


    echo "โปรดตรวจสอบข้อมูลให้ถูกต้อง";


    }


    ?>


     

11 มิ.ย. 2554 เวลา 16:59 น. 1 1,321

555+++

คำตอบนี้ง่ายมากครับ เนื่องจากมี การส่ง 2 ครั้งครับ




                $mail->Send();


          if(!$mail->Send()) {

    

    บรรทัดแรกไม่จำเป็นครับ หากต้องการส่งและตรวจสอบว่าส่งสำเร็จหรือไม่ ใช้ บรรทัดที่มี if ก็เพียงพอครับ และ หากต้องการแยกบรรทัด ก็ให้ใช้ตัวแปรมารับค่า แล้วค่อยเอาตัวแปรไปตรวจครับ

    

    Send() คือ คำสั่งส่ง เขียน 1 ครั้ง ส่ง 1 ฉบับครับ

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