ให้เรตสมาชิก: 2 / 5

ดาวใช้งานดาวใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

ก่อนอื่นทำความรู้จักร 

PHP Mail library สำหรับส่งเมล swiftmailer

กันก่อนครับ  สิ่งที่จะแนะนำในบทความนี้คือการใช้งาน swiftmailer ในฐานะของ extensions ของ Yii Framework ซึ่งนอกจาก swiftmailer แล้ว Extension ที่ช่วยในในการส่งเมล แทนฟังก์ชั่น mail ของ php แล้ว Yii Framework ยังมี extensions yii-dkim (ใช้ library PHP-DKIM) , mailer (ใช้ library PHPMailer)  สำหรับในบทความนี้ผมเลือก swiftmailer เพราะเป็น extensions ที่ใช้งานงาน มีระบบ Log การ config ง่าย วิํธีคือ ให้ดาวน์โหลด Yii  swiftmailer extensions จากที่
1. https://code.google.com/p/yii-mail/
2. unzip ไปไว้ที่ protected/extensions/
3. ในไฟล์ config ของ yii Framework เพิ่ม
 'application.extensions.yii-mail.*'ในส่วนของ autoloading model และ component classes
จะได้ ตามตัวอย่าง
    // autoloading model and component classes
    'import'=>array(
        'application.models.*',
        'application.components.*',
                'application.extensions.yii-mail.*'
    ),

และเพิ่ม
                'mail' => array(
                    'class' => 'application.extensions.yii-mail.YiiMail',
                    'transportType'=>'smtp', /// case sensitive!
                    'transportOptions'=>array(
                        'host'=>'mail server',
                        'username'=>'ชื่อผู้ใช้',
                        'password'=>'รหัส,
                        'port'=>'25',
                      //  'encryption'=>'ssl',
                        ),
                    'viewPath' => 'application.views.mail',
                    'logging' => true,
                    'dryRun' => false
                ),
ในส่วนของ components
4. ตัวอย่างโค้ดส่งเมลในส่วนของ Model
                 $addto = 'E-mail ของผู้รับ';
$msg = 'ข้อความที่ต้องการส่ง';
$message = new YiiMailMessage;
$message->subject = 'หัวข้อมูลที่ต้องส่ง';

$message->setBody($msg, 'text/html');             
$message->addTo($addTo);
$message->from = Yii::app()->params['adminEmail'];
Yii::app()->mail->send($message);   

เท่านี้เราก็ส่งเมล ออกแทนการใช้ function mail() ของ php ได้แล้วครับ
ถ้าต้องการ เอาข้อมูลจาก View มาเป็นข้อความในการส่งเมลก็ทำได้ไม่ยากครับ โดยเรา renderPartial มาใช้ได้เลย

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ลดอาการเครียดด้วยการกินกันเถอะ
โดย jamepiyawat พฤ 23 พฤษภาคม 2019 6:43 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
4
พฤ 23 พฤษภาคม 2019 6:43 pm โดย jamepiyawat
ปลั๊กสามตา คำนี้คุ้นๆไหม แล้วมันคืออะไร
โดย teenproza7 พฤ 23 พฤษภาคม 2019 6:39 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
4
พฤ 23 พฤษภาคม 2019 6:39 pm โดย teenproza7
FBI คืออะไรทำไมได้ยินในหนัง Hollywood บ่อยๆ
โดย teenproza7 พฤ 23 พฤษภาคม 2019 6:22 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
4
พฤ 23 พฤษภาคม 2019 6:22 pm โดย teenproza7
ติดต่อ database ไม่ได้ครับ
โดย teenproza7 พฤ 23 พฤษภาคม 2019 4:42 pm บอร์ด Programming - C/C++ & java & Python
5
29
พฤ 23 พฤษภาคม 2019 6:23 pm โดย tatiya
ติดตั้ง xampp ใน ubuntu
โดย jamepiyawat พฤ 23 พฤษภาคม 2019 4:14 pm บอร์ด Share Knowledge
0
6
พฤ 23 พฤษภาคม 2019 4:14 pm โดย jamepiyawat
ไม่สามารถแสดงข้อมูลในdatabase ได้
โดย teenproza7 พฤ 23 พฤษภาคม 2019 4:09 pm บอร์ด Programming - C/C++ & java & Python
1
12
พฤ 23 พฤษภาคม 2019 4:13 pm โดย tatiya
ไม่สามารถรับทอดตัวclass ได้ครับ
โดย teenproza7 พฤ 23 พฤษภาคม 2019 3:02 pm บอร์ด Programming - C/C++ & java & Python
1
17
พฤ 23 พฤษภาคม 2019 3:08 pm โดย tatiya
หาโรงแรมใกล้ตัวด้วย google map
โดย jamepiyawat พฤ 23 พฤษภาคม 2019 2:30 pm บอร์ด Share Knowledge
0
9
พฤ 23 พฤษภาคม 2019 2:30 pm โดย jamepiyawat
ฟอนต์ฟรี หาได้จากไหน
โดย teenproza7 พฤ 23 พฤษภาคม 2019 2:02 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
5
พฤ 23 พฤษภาคม 2019 2:02 pm โดย teenproza7
ดูรอบหนังง่าย ๆ ด้วย google
โดย jamepiyawat พฤ 23 พฤษภาคม 2019 1:55 pm บอร์ด Share Knowledge
0
5
พฤ 23 พฤษภาคม 2019 1:55 pm โดย jamepiyawat
สมมุติว่าถูกหวยแล้วต้องทำยังไง
โดย teenproza7 พฤ 23 พฤษภาคม 2019 1:38 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
7
พฤ 23 พฤษภาคม 2019 1:38 pm โดย teenproza7
ต้นไม้ที่สามารถปลูกในห้องได้
โดย jamepiyawat พฤ 23 พฤษภาคม 2019 1:35 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
7
พฤ 23 พฤษภาคม 2019 1:35 pm โดย jamepiyawat
X86 X64 นั้นคืออะไร
โดย teenproza7 พฤ 23 พฤษภาคม 2019 12:01 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
5
พฤ 23 พฤษภาคม 2019 12:01 pm โดย teenproza7
ทำความสะอาดคอมไม่ใช่เรื่องยาก
โดย jamepiyawat พฤ 23 พฤษภาคม 2019 11:34 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
8
พฤ 23 พฤษภาคม 2019 11:34 am โดย jamepiyawat
ตาบอดสี ตาไวต่อแสง หมดปัญหาด้วยฟีเจอร์ ตัวกรองสี ใน Windows 10
โดย teenproza7 พฤ 23 พฤษภาคม 2019 11:05 am บอร์ด Microsoft Office Knowledge & line & Etc
0
7
พฤ 23 พฤษภาคม 2019 11:05 am โดย teenproza7
งานประจำวันที่ 23 พฤษภาคม 2562
โดย jamepiyawat พฤ 23 พฤษภาคม 2019 10:37 am บอร์ด M084 - นายปิยวัช เชาว์วิมล
7
25
พฤ 23 พฤษภาคม 2019 7:01 pm โดย jamepiyawat
งานประจำวันที่ 23 พฤษภาคม 2562
โดย teenproza7 พฤ 23 พฤษภาคม 2019 9:55 am บอร์ด M082 - ยศนันท์ ปันคำ
1
7
พฤ 23 พฤษภาคม 2019 7:17 pm โดย teenproza7
อยากเล่นเฟซบุ๊กต้องทำยังไง
โดย teenproza7 พ 22 พฤษภาคม 2019 8:48 pm บอร์ด Share Knowledge
0
35
พ 22 พฤษภาคม 2019 8:48 pm โดย teenproza7
สอบถามเรื่องการสร้างเพจ
โดย khwanchanok พ 22 พฤษภาคม 2019 7:14 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
18
พ 22 พฤษภาคม 2019 7:14 pm โดย khwanchanok
วิธี start server บนเครื่อง VM กรณี server ดับ (Ubuntu server) ระบบไฟล์มีปัญหา
โดย tatiya พ 22 พฤษภาคม 2019 7:04 pm บอร์ด Linux - Web Server
0
23
พ 22 พฤษภาคม 2019 7:04 pm โดย tatiya