Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > สอบถามเรื่องการใช้งานสคริปส่งอีเมล์ SMTP หน่อยครับ PHP on Debian



 

สอบถามเรื่องการใช้งานสคริปส่งอีเมล์ SMTP หน่อยครับ PHP on Debian

 



Topic : 124360



โพสกระทู้ ( 37 )
บทความ ( 0 )



สถานะออฟไลน์




มีปัญหาคืออีเมล์แจ้งว่าส่งข้อความเรียบร้อย แต่ทางปลายทางไม่ได้รับอีเมล์ครับ ในที่นี้ผมได้ลองเปลี่ยนอีเมล์ผู้รับ ให้เป็นทั้งเมล์ของ Gmail และ เมล์ของบริษัทก็ไม่มีเมล์ไหนได้รับข้อความทั้ง ๆ ที่ขึ้นว่า Email sending.

mail.php
<html>
<head>
<title></title>
</head>
<body>
<?php
	$strTo = "[email protected]";
	$strSubject = "Test Send Email";
	$strHeader = "From: [email protected]";
	$strMessage = "My Body & My Description";
	$flgSend = mail($strTo,$strSubject,$strMessage,$strHeader);
	if($flgSend)
	{
		echo "Email sending. ";
	}
	else
	{
		echo "Cannot send Mail!";
	}
?>
</body>
</html>


Log Mail ใน var/mail/www-data/ แจ้งว่ามีการส่งข้อความออก แต่ปลายทางไม่ได้รับอีเมล์

ตัวอย่าง Log

Code
From MAILER-DAEMON Wed Aug 24 17:07:39 2016 Return-path: <> Envelope-to: [email protected] Delivery-date: Wed, 24 Aug 2016 17:07:39 +0700 Received: from Debian-exim by admin with local (Exim 4.84_2) id 1bcV5v-0001u1-FD for [email protected]; Wed, 24 Aug 2016 17:07:39 +0700 X-Failed-Recipients: [email protected] Auto-Submitted: auto-replied From: Mail Delivery System <[email protected]> To: [email protected] Subject: Mail delivery failed: returning message to sender Message-Id: <E1bcV5v-0001u1-FD@admin> Date: Wed, 24 Aug 2016 17:07:39 +0700 This message was created automatically by mail delivery software. A message that you sent could not be delivered to one or more of its recipients. This is a permanent error. The following address(es) failed: [email protected] Mailing to remote domains not supported ------ This is a copy of the message, including all the headers. ------ Return-path: <[email protected]> Received: from www-data by admin with local (Exim 4.84_2) (envelope-from <[email protected]>) id 1bcV5v-0001tx-Ee for [email protected]; Wed, 24 Aug 2016 17:07:39 +0700 To: [email protected] Subject: Test Send Email X-PHP-Originating-Script: 0:mail.php From: [email protected] Message-Id: <E1bcV5v-0001tx-Ee@admin> Date: Wed, 24 Aug 2016 17:07:39 +0700 My Body & My Description


เกิดจากสาเหตุใดได้บ้างครับ มีแนวทางการแก้ไขอย่างไร

ขอบคุณครับ



Tag : PHP









ประวัติการแก้ไข
2016-08-24 20:46:31
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2016-08-24 20:45:35 By : thanabordees93 View : 1454 Reply : 5
 

 

No. 1



โพสกระทู้ ( 9,587 )
บทความ ( 2 )



สถานะออฟไลน์


ลองเข้าไปดู php.ini ครับว่าเซท smtp ไว้ที่ไหน

คำสั่ง mail() จะใช้ config ใน php.ini ครับ

ซึ่งปกติ ถ้าไม่ได้แก้อะไร ก็จะใช้ mail server ของเครื่องโฮส ที่ใช้งานอยู่

และก็ต้องถามต่อไปว่าเครื่อง โฮส ได้ลง mail server หรือยังครับ

พวก postfix mail server - dovecot

เป็น โฮสตตัวเอง หรือ เช่า ถ้าเช่าก็คุยกับ ผู้ให้เช่าเลยครับ น่าจะง่ายกว่า






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-08-24 21:04:48 By : Chaidhanan
 


 

No. 2



โพสกระทู้ ( 37 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 1 เขียนโดย : Chaidhanan เมื่อวันที่ 2016-08-24 21:04:48
รายละเอียดของการตอบ ::
Host ของตัวเองครับ แต่คือคิดว่ามีแล้ว เพราะใน Log ขึ้นรายละเอียดการส่งมาครบเลย และข้อความขึ้นส่งเรียบร้อย ผมเอาไปลองกับเครื่องอื่นที่ไม่ได้ลง Postfix มันจะขึ้นเตือนว่าส่งล้มเหลว แล้วแจ้งมาเลยครับว่าให้ไปตั้งค่าในไฟล์ php.ini เพื่อชี้หาตัว web mail

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-08-24 21:35:25 By : thanabordees93
 

 

No. 3



โพสกระทู้ ( 411 )
บทความ ( 0 )



สถานะออฟไลน์


ลองดูใน junk ครับ
การส่งเมล์โดย smtp ทั่วไป หลายๆ Server ปลายทางไม่ยอมรับครับ บางครั้งส่งไปที จะถูก reject หลัง 24 ชม. ครับ

ลองส่งโดย phpMailer ดูครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-08-25 07:32:29 By : goragod
 


 

No. 4



โพสกระทู้ ( 37 )
บทความ ( 0 )



สถานะออฟไลน์


ใน Junkmail ไม่มีครับ ลองมาใช้ phpMailer แล้วเมล์ก็ไม่เข้า

ผมทดสอบจาก localhost ไม่ติดตั้ง Postfix ไม่มีเว็บเมล์ เวลาส่งไป
จะขึ้นข้อความแจ้งในหน้า php มาว่า

Warning: file_get_contents(contents.html): failed to open stream: No such file or directory in C:\xampp\htdocs\phpmailer\index.php on line 20
Mailer Error: Could not instantiate mail function.


แต่ถ้าไปรันใน Debian ที่มี Postfix อยุ่แล้ว มันขึ้นข้อความว่า

Message sent!

แต่ไม่มีข้อความเข้าเมล์ผู้รับเลยครับ ตรวจสอบทุกถาดข้อความแล้ว

แต่การส่งด้วย PHPMailer จะไม่ขึ้นโชว์ใน Log นะครับ

อันนี้เป็นตัวอย่างโค๊ดที่ใช้โดย PHPMailer

Code (PHP)
<?php
/**
 * This example shows sending a message using PHP's mail() function.
 */

require 'PHPMailerAutoload.php';

//Create a new PHPMailer instance
$mail = new PHPMailer;
//Set who the message is to be sent from
$mail->setFrom('[email protected]', 'Webmaster');
//Set an alternative reply-to address
$mail->addReplyTo('[email protected]', 'Webmaster');
//Set who the message is to be sent to
$mail->addAddress('[email protected]', 'Recevier');
//Set the subject line
$mail->Subject = 'PHPMailer mail() test';
//Read an HTML message body from an external file, convert referenced images to embedded,
//convert HTML into a basic plain-text alternative body
$mail->msgHTML(file_get_contents('contents.html'), dirname(__FILE__));
//Replace the plain text body with one created manually
$mail->Body = 'This is a plain-text message body';
$mail->AltBody = 'This is a plain-text message body';
//Attach an image file
$mail->addAttachment('images/phpmailer_mini.png');

//send the message, check for errors
if (!$mail->send()) {
    echo "Mailer Error: " . $mail->ErrorInfo;
} else {
    echo "Message sent!";
}


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-08-25 15:13:35 By : thanabordees93
 


 

No. 5



โพสกระทู้ ( 9,587 )
บทความ ( 2 )



สถานะออฟไลน์


$mail->msgHTML( file_get_contents('contents.html'), dirname(__FILE__));

สีแดงทำอะไรครับ

ผมเคยใช้แต่
$mail->msgHTML( file_get_contents('contents.html'));

ส่วน file_get_contents('contents.html'); ก็ต้องตรวจสอบ path ให้ดีครับว่า ไฟล์มันอยู่ตรงที่กำหนดหรือไม่
ไฟล์แม่ที่เรียกใช้ class นี้อยู่ที่ไหน ให้ถือว่า ตรงนั้นเป็น root
relative ให้ดี ไฟล์ contents.html ต้องอยู่ folder ชั้นเดียวกันกับไฟล์แม่ ที่ เรียก คลาส phpmailler นี้

น่าจะลองอ่าน config ของ phpmailler ให้ดีก่อนใช้งานนะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-08-25 16:02:28 By : Chaidhanan
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถามเรื่องการใช้งานสคริปส่งอีเมล์ SMTP หน่อยครับ PHP on Debian
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 02
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่