PHP somola 69: jinsi ya kutuma email kwa watu zaidi ya mmoja kwa kutumia PHPMailer
Katika somo il utajifunza kutuma email kwa watu wengi kwa kutumia PHPMailer. Pia utajifunza jinsi ya kuweka Carbon Copy na Blind Carbon Copy
Kutuma emailkwa watu zaidi ya mmoja:
Kabla hatujatuma barua pepe kw amtu zaidi ya mmoja,ngooja kwanz atuone jinsi ya kuweka, reply, CC na BCC. kama umeshatumia gmail ama email provider nyingine bila shakaumeshakutana na hizi terminologyCC na BCC.
CC ina maana ya Carbon Copy: hii hutumika kutuma copi ya barua pepe ulioituma kwa watuzaidiya mmoja,kwa mhusika. Huyo anayetumiwa hiyo kopi anaweza kuona watu wote ambao barua pepehiyo wanatumiwa. Kuweka CC tutatumia addCC.
Mfano $mail->addCC('cc1@example.com', 'Elena'); pia unaweza kuweka CC zaidi ya mmoja.
$mail->addCC('cc1@example.com', 'Elena');
$mail->addCC('cc2@example.com', 'Elena');
$mail->addCC('cc3@example.com', 'Elena');
BCC ina maana Blind Carbon Copy hii ni kama hiyo hapojuu ilatofautii kuwa mhusika hatoweza kuona majinana email za watu ambao wametumiwa emailhiyo. Kwa hiyo hapa ni sawana kumtarifu kuwa ujumbe fulani umetumwa. Kuweka BCC ttatumia addBCC. Pia unaweza kuweka zaidi ya mmoja
Mfano:
$mail->addBCC('bcc2@example.com', 'Anna');
$mail->addBCC('bcc3@example.com', 'Mark');
Sasa pia unapotuma barua kwa watu wengi ni vyema pia kutoa maelekezo kwa server kuwa endapo mtu atahitaku ku reply hiyo email ata reply kwa kutumia email gani. Kufanya hivi tutatumia addRepyTo mfano
$mail->addReplyTo('info@mailtrap.io', 'Mailtrap');
Code zote zitakuw ahivi:
<?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 = 'username';
$mail->Password = 'password';
$mail->SMTPSecure = 'tls';
$mail->Port = 2525;
// Sender and recipient settings
$mail->setFrom('info@mailtrap.io', 'Mailtrap');
$mail->addReplyTo('info@mailtrap.io', 'Mailtrap');
$mail->addAddress('recipient1@mailtrap.io', 'Tim');
// CC and BCC
$mail->addCC('cc1@example.com', 'Elena');
$mail->addBCC('bcc1@example.com', 'Alex');
// Adding more BCC recipients
$mail->addBCC('bcc2@example.com', 'Anna');
$mail->addBCC('bcc3@example.com', 'Mark');
// Email content
$mail->isHTML(false);
$mail->Subject = "PHPMailer SMTP test";
$mail->Body = 'Karibu bongoclass kwenye jumuia yetu';
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}";
}
?>
Sasa tuone jinsi ya kutuma kwa watu zaidi ya mmoja:
Hiki ni kipengelemuhimu sana hasa kwa ambao wanafanya email marketing. Unatakiw auwe na uwezo wakutuma maelfu ya email kwa siku. Hapa tutaweka emailkwneye array.
Mfano:
$users = [
['email' => 'max@gmail.com', 'name' => 'Max'],
['email' => 'box@example.com', 'name' => 'Bob']
];
Utaona hapo email zetu zipokwneye varible ambayo ji array. Kila email ina jina la mtumiaji. Sasa hapo unaweza kuitumia aray hiyo kutuma barua pepe. Hapo tutatumia foreach loop kwa ajili ya kuzitumia hizo email zilizopo kwenye array.
Sasa kwakuwa mchakato huu unafanyikakwenye loop, hivyoitabidi tuweze kuifanya connection yetuiwe live. $mail->SMTPKeepAlive = true; utaona hapa tumeweka true.kwahivyokila ukitumwa emailkw amtu mmoja connection hifungi mpaka wote wamalizike. Tutakapokuwa tumefika mwisho wa loop basi tutaclear meseji ilikuanza upya. $mail->clearAddresses();kisha tutafunga connection baad ya kumaliza kazi. $mail->smtpClose();
Mfano:
<?php
use PHPMailer\PHPMailer\PHPMailer;
require 'vendor/autoload.php';
$mail = new PHPMailer;
$mail->isSMTP();
$mail->Host = 'live.smtp.mailtrap.io';
$mail->SMTPAuth = true;
$mail->Username = '1a2b3c4d5e6f7g';
$mail->Password = '1a2b3c4d5e6f7g';
$mail->SMTPSecure = 'tls';
$mail->Port = 2525;
$mail->SMTPKeepAlive = true;
$mail->setFrom('list@example.com', 'List manager');
$mail->Subject = "my email list";
$users = [
['email' => 'max@gmail.com', 'name' => 'Max'],
['email' => 'box@example.com', 'name' => 'Bob']
];
foreach ($users as $user) {
$mail->addAddress($user['email'], $user['name']);
$mail->Body = "Hello, {$user['name']}! tunakukaribisha sana bongoclass";
try {
$mail->send();
echo "Message sent to: ({$user['email']}) {$mail->ErrorInfo}\n";
} catch (Exception $e) {
echo "Mailer Error ({$user['email']}) {$mail->ErrorInfo}\n";
}
$mail->clearAddresses();
}
$mail->smtpClose();
Mwisho:
Katika somo linalofuata tutakwenda kujifunza jinsi ya kutuma barua pepe ya html.pia tutajifunza jinsi ya kuweka attachment kama picha na pdf.
Jiunge nasi WhatsApp kupata update zetu
Umeionaje Makala hii.. ?
Share On:
👉1 ai web app 👉2 Sira ya Mtume Muhammad (s.a.w) 👉3 Dua za Mitume na Manabii 👉4 Madrasa kiganjani 👉5 Kitau cha Fiqh 👉6 web hosting
Post zinazofanana:
PHP - somo la 2: sheria za uandishi wa code za PHP
Katika somo hili utajifunza kuhusu syntax za PHP
Soma Zaidi...PHP - somo la 45: Jinsi ya kutuma sms kwa kutumia PHP
Katika soko hili takwenda kujufunza jinsi ya kutuma sms kwa kutumia PHP. Hii itasaidia kama unataka kutuma OTP yaqni Onetime password
Soma Zaidi...PHP somo la 71: Jinsi ya kutengeneza PDF kwa kutumia PHP na library ya tcpdf
Katika somo hili utakwenda kujifunza jinsi ya ku generate PDF automatik kutoka kwenye php code , html, javascript na css.
Soma Zaidi...PHP somo la 102: Cron job
atika somo hli tutakwenda kujifunza kuhusu kitu kinachitwa cron job. ni moja ya teknolojia zinazotumika kufanya kazi zinazofanyika automatic
Soma Zaidi...PHP somo la 93: Jinsi ya kutumia faili la env
Faili la env ni moja kati ya mafaili ambayo ni muhimu kwa usalama wa project. Fili hili hutumika kuhifadhi data za siri
Soma Zaidi...PHP somola 78: Cookie Headers
Katika somo hili utakwenda kujifunza kuhusu Cookie Headers
Soma Zaidi...