ThaiSEOBoard.com

พัฒนาเว็บไซต์ => Programming => ข้อความที่เริ่มโดย: kunnarakkup ที่ 07 ตุลาคม 2014, 10:06:21



หัวข้อ: ดู error ส่งอีเมล์ให้หน่อยครับ
เริ่มหัวข้อโดย: kunnarakkup ที่ 07 ตุลาคม 2014, 10:06:21
Fatal error: Class 'SMTP' not found in C:\AppServ\www\test-wax\PHPMailer-master\class.phpmailer.php on line 1194

ลองเขียนตามในกูเกิ้ลดูแล้วมัน error  อะครับ ละอีกอย่างครับ phpmailer ต้องวางในไดร์cทั้งโฟเดอร์เลยมั้ยหรือเอาแค่ไฟล์    class.phpmailer.php' class.smtp.php แค่นี้อะครับ คือผมโหลดซีทที่สอนจากมหาลัยผมมาเห็นเข้าเอาแค่ไฟล์ พวกนี้อะครับ แต่ที่สอนในชีทสอนแค่ส่งเข้า จีเมล แต่ของผมจะส่งเข้า mail server ครับ

<?php

   require('PHPMailer-master/class.phpmailer.php');
   $mail = new PHPMailer();

$body = "ทดสอบการส่งอีเมล์ภาษาไทย UTF-8 ผ่าน SMTP Server ด้วย PHPMailer.";

$mail->CharSet = "utf-8";
$mail->IsSMTP();
$mail->SMTPDebug = 0;
$mail->SMTPAuth = true;
$mail->Host = "smtp.sqigroup.com"; // SMTP server
$mail->Port = 25; // พอร์ท
$mail->Username = "[email protected]"; // account SMTP
$mail->Password = "xxxx"; // รหัสผ่าน SMTP

$mail->SetFrom("[email protected]");
$mail->AddReplyTo("[email protected]");
$mail->Subject = "ทดสอบ PHPMailer.";

$mail->MsgHTML($body);

$mail->AddAddress("[email protected]"); // ผู้รับคนที่หนึ่ง

if(!$mail->Send()) {
    echo "Mailer Error: " . $mail->ErrorInfo;
} else {
    echo "Message sent!";
}
?>


หัวข้อ: Re: ดู error ส่งอีเมล์ให้หน่อยครับ
เริ่มหัวข้อโดย: kunnarakkup ที่ 07 ตุลาคม 2014, 10:28:28
9voouh  include ไฟล์นี้เพิ่ม  require('PHPMailer-master/class.phpmailer.php');
 ไม่มีerrorขึ้น แต่มันขึ้นข้อความที่ดักไว้ิอะครับว่าส่งไม่ได้
(http://upload.siamza.com/file_upload/modify/071014/1514855.png) (http://upload.siamza.com/1514855)


หัวข้อ: Re: ดู error ส่งอีเมล์ให้หน่อยครับ
เริ่มหัวข้อโดย: ttong ที่ 07 ตุลาคม 2014, 13:52:42
ทดสอบในเครื่องตัวเองใช่มั้ยครับ
ถ้าใช่ คุณได้จำลองเครื่องตัวเองเป็น Mail server หรือยัง

ถ้าให้ดีลองทดสอบบน Hosting จริงเลยจะดีกว่าครับ


หัวข้อ: Re: ดู error ส่งอีเมล์ให้หน่อยครับ
เริ่มหัวข้อโดย: st70r ที่ 07 ตุลาคม 2014, 13:57:00
   ใช่นี้แทน หรือ เปล่า ลองดู

  //require('PHPMailer-master/class.phpmailer.php');
 require 'PHPMailer-master/PHPMailerAutoload.php';


หัวข้อ: Re: ดู error ส่งอีเมล์ให้หน่อยครับ
เริ่มหัวข้อโดย: kunnarakkup ที่ 07 ตุลาคม 2014, 14:49:34
  ใช่นี้แทน หรือ เปล่า ลองดู

  //require('PHPMailer-master/class.phpmailer.php');
 require 'PHPMailer-master/PHPMailerAutoload.php';

ผมทำอยู่ 2 เว็บ แล้วตอนนี้อีกเว็บนึงก็ใช้ phpmailer เหมือนกันครับ อีกตัวนึงพึ่งสังเกตุเห็นอะครับว่า ถ้ากรอกข้อมูลผ่านฟอมแล้ว พอเฃ็คที่เมล์เซิฟเว่อเมลไม่ส่งครับ ที่พอไปรันที่ตัวสคริปส่งเมล์เลย ปรากฎว่ามีอีเมล์ส่งครับแต่ไม่มีข้อมูล

กรอกผ่านฟอมไม่มีเมล์ส่ง ในอีเมล์ที่ส่งไปมันขึ้นแค่รนี้อะครับ "Email : "   //  .$_GET["txt_email"]; แต่อีเมล์จากฟอมไม่มีส่งครับ

<form action="sendEmail.php" method="get" enctype="multipart/form-data" id="contact-us" name="f1">
              <input name="txt_email" id="email" type="text" placeholder="E-Mail" required autofocus><br>
              <input name="txt_subj"  id="user-name"  type="text"placeholder="Subject" required autofocus><br>
              <input name="txt_tel" id="tel" placeholder="Telephone Number" required autofocus><br>
              <textarea name="area_detail" id="comment" rows="10" cols="70" placeholder="Comment" required autofocus></textarea><br>
              <input  name="submit" id="submit" TYPE="submit" VALUE="SEND" />

</form>



แต่พอรันสคริปส่งเมล์เลยกลับส่งอะครับ

<?php

require_once('PHPMailerAutoload.php');
   include("class.smtp.php");
      $mail = new PHPMailer();
      $mail->CharSet="utf-8";
      $mail->IsSMTP();
       $mail->Host = 'mail.sqigroup.com';
      $mail->Port = 25;
      $mail->SMTPAuth = true;
      $mail->Username = '[email protected]';
      $mail->Password = 'xxx';
      $mail->From = $_GET["txt_email"];
    
     $mail->subject = $subject = $_GET['txt_subj'];
     $mail->subject = $subject = "=?utf-8?B?".base64_encode( $subject)."?=";
    
      $mail->Body     = "Email : ".$_GET["txt_email"];  // ????????????????????
      $mail->AltBody = "Email : ".$_GET["txt_email"];  // ????????????????????
      $mail->AddAddress( '[email protected]');
      $mail->Send();    
      
   $mail->Send();
if(!$mail->Send()) {
    echo "Mailer Error: " . $mail->ErrorInfo;
} else {
    echo "Message sent!";
}  

?>


หัวข้อ: Re: ดู error ส่งอีเมล์ให้หน่อยครับ
เริ่มหัวข้อโดย: prinzekung ที่ 07 ตุลาคม 2014, 15:13:38
เอาใจช่วยนะคะ


หัวข้อ: Re: ดู error ส่งอีเมล์ให้หน่อยครับ
เริ่มหัวข้อโดย: kunnarakkup ที่ 07 ตุลาคม 2014, 15:15:08
งงมากเลย