picha

PHP somo la 70: jinsi ya kutuma email yenye html, picha na attachment

Katika somo hili utakwenda kujifunza jinsi ya kutuma email ambayo ina HTML, pia utajifunza kutuma email yenye picha na attachment nyinginezo kama pdf

Jinsiya kutuma email yenye html

Sas wakati mwingine utahitaji kutuma email ambayo ndnai yakeina html. Kufanya hivi kwanza utahitajika kutoa taarifa kwneye smtp server kuwa emailina html. Utaweka true. Mfano $mail->isHTML(true);. Baad aya hapo utaadika ujumbe wako wa htmlkwenye body. 

mfano

$mail->Body = '<h1>Karibu Bongoclass</h1><p>Utaweza kujifunza mengi katika teknolojia</p>';

 

Sasa kwa sababu za kisalama baadhiya email server provider wanaweza kuzuia kufungua htmlkwenye email mpaka pale mmiliki atakaporuhusu. Hivyo basi ni vyemakuweka ujumbe mbadala. Yaaniendapo mtu hataruhusu htmlzifungukekwneyeemailyake basi tutamunyeshaplain texttu. Ujumbe huu mbadala tutauweka kwa kutumia altBody() 

Mfano:

$mail->AltBody = 'Karibu Bongoclass. Utaweza kujifunza mengi katika teknolojia';

 

Code zote zitaonekana hivi:

<?php

use PHPMailer\PHPMailer\PHPMailer;

use PHPMailer\PHPMailer\Exception;

 

require 'vendor/autoload.php';

 

$mail = new PHPMailer(true);

 

try {

   $mail->isSMTP();

   $mail->Host = 'live.smtp.mailtrap.io';

   $mail->SMTPAuth = true;

   $mail->Username = 'paste one generated by Mailtrap';

   $mail->Password = 'paste one generated by Mailtrap';

   $mail->SMTPSecure = 'tls';

   $mail->Port = 2525;

 

   // Sender and recipient settings

   $mail->setFrom('info@mailtrap.io', 'Mailtrap');

   $mail->addAddress('recipient1@mailtrap.io', 'Tim');

 

   // Email content

   $mail->isHTML(true);

   $mail->Subject = "PHPMailer SMTP test";

   $mail->Body = '<h1>Karibu Bongoclass</h1><p>Utaweza kujifunza mengi katika teknolojia</p>';

   $mail->AltBody = 'Karibu Bongoclass. Utaweza kujifunza mengi katika teknolojia';

 

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

       echo 'Message could not be sent.';

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

   } else {

       echo 'Message has been sent';

   }

} catch (Exception $e) {

   echo "Message could not be sent. Mailer Error: {$mail->ErrorInfo}";

}

?>



 

Jinsi ya kuweka attachment:

Sasa mfano unatakakuweka pdf, ama faili lolote kwenye email yako. Tutatumia addAttachment() utaweka location ya hilo faili ama linkyake.

Mfano:

$mail->addAttachment('pathf', 'file.pdf');

Mfano tuna pdf faili letu kwenye folda linaloitwa files,na faili letu linaitwa test.pdf. Hivyo tutaliweka katika namna hii.

$mail->addAttachment('files/test.pdf', 'test.pdf');

Pia kama mafaili ni zaidi ya moja utayaweka kwa mtindo kama huo

Mfano:

$mail->addAttachment('files/test1.pdf', 'test1.pdf');

$mail->addAttachment('files/test2.pdf', 'test2.pdf');

$mail->addAttachment('files/tes3t.pdf', 'test3.pdf');

 

Jinsi ya kuweka picha

Sasa wkati mwingine unahitaji kwenye email yakouweze ku display picha.saahapa kua utaratibu mwingine tofauti na vile ambavyo tunafahamu kwenye html.hapa tutatumia addEmbeddedImage() tutaweka path yaani location ya hiyopicha. Kisha tutaweka 'image_cid'

Mfano

Piacha yetu ipo kwenye folda linaloitwa files na picha yetu inaitwa email.jpeg

Kisha wakati wakuitumia tataweka <img src="cid:image_cid"> sio lazima kutumia image_cid unawezakutumia kitamblisho cochote. Mfano tunataka kuweka picha mbili kwenye email yetu. Hapo kilamoja itakuwa na cid yakwake

$mail->addEmbeddedImage('files/email.jpeg', 'image1');

$mail->addEmbeddedImage('files/mbu.png', 'image2');

$mail->Body = '<p>haloo karibu saba.<b>wewe ni rafiki<u>waa kweli</u></b></p><img src="cid:image1"><br> Mail body in HTML <img src="cid:image2">';


 

Wacha tuonecode zote:

<?php

use PHPMailer\PHPMailer\PHPMailer;

require 'vendor/autoload.php';

 

$mail = new PHPMailer(true); // Enables exceptions

 

$mail->isSMTP();

$mail->Host = 'live.smtp.mailtrap.io';

$mail->SMTPAuth = true;

$mail->Username = 'api';

$mail->Password = 'af57db7937f19811dca7610d96776d14';

$mail->SMTPSecure = 'tls';

$mail->Port = 587;

 

$mail->setFrom('info@demomailtrap.com', 'Bongoclass');

$mail->addReplyTo('admin@demomailtrap.com', 'John Doe');

$mail->addAddress('skyclassbongo@gmail.com', 'Recipient Name');

$mail->addAttachment('files/test.pdf', 'test.pdf');

$mail->isHTML(true);

$mail->Subject = "PHPMailer SMTP test";

$mail->addEmbeddedImage('files/email.jpeg', 'image1');

$mail->addEmbeddedImage('files/mbu.png', 'image2');

$mail->Body = '<p>haloo karibu saba.<b>wewe ni rafiki<u>waa kweli</u></b></p><img src="cid:image1"><br> Mail body in HTML <img src="cid:image2">';

$mail->AltBody = 'This is the plain text version of the email content';

 

 

 

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

   echo 'Message could not be sent.';

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

}else{

   echo 'Message has been sent';

}

 

Mwisho:

Huu ndio mwisho wa somo letu la kutuma email kwa kutumia phpmailer. Nichukuwe nafasi hii pia kukukaribisha kwenye somo linalofuata ambalo tutakwend akujifunza kuhusu kutengeneza pdf kwa kutumia php

 

Jiunge nasi WhatsApp kupata update zetu
Zoezi la Maswali

Nyuma Endelea


Umeionaje Makala hii.. ?

       
Author: Rajabu image Tarehe: 2024-06-03 19:31:36 Topic: PHP Main: Masomo File: Download PDF Views 9201

Share On:

Share follows: 0 | Unique share links followed: 0
Sponsored links
👉1 web hosting     👉2 kitabu cha Simulizi     👉3 Simulizi za Hadithi Audio     👉4 Madrasa kiganjani     👉5 Dua za Mitume na Manabii     👉6 Kitabu cha Afya    

Post zinazofanana:

PHP - somo la 22: Kutafuta jumla, wastani na idani ya vitu kwenye database kw akutumia PHP

Katika somo hili utakwenda jifunza jinsi ya kuhesabu row kwenye database, kutafuta wastani wa taarifa kwenye database na kutafuta idadi yake.

Soma Zaidi...
PHP somo la 64: Jinsi ya kutengeneza database na kuingiza data kwa kuumia PDO

Katika somo hili utakwenda kujifunza jinsi ya kutumia PDO kutengeneza database, kuteneneza table na kuingiza data moja na zaidi ya moja.

Soma Zaidi...
PHP somo la 92: Jinsi ya kuunganisha php na database ya sqlite

Katika somo hili utakwenda kujifunza jinsi ya kutumia database ya sqlite kwa kutumia PHP.

Soma Zaidi...
PHP somo la 97: Jinsi ya kuchakata data zaidi kwa kutumia ORM

Katika somo hili utakwenda kujifunz akuchakata data zaidi kw akutumia ORM kama ku join table

Soma Zaidi...
PHP somo la 60: namespace na matumizi yake kwenye PHP

Katika somo hili utakwendakujifunza concept ya namespaces na jinsi inavyosaidi kwenye OOP

Soma Zaidi...
PHP somo la 98: Library za PHP ambazo unaweza kutumia ORM

Somo hili litakwenda kukutajia baadhi ya library za php ambazo hutumika kwa matumizi ya ORM

Soma Zaidi...