Mivel szervereinken tiltva van a mail() függvény használata, ezért a weboldalakról csak SMTP hitelesítéssel lehetséges leveleket küldeni.
A népszerű CMS rendszereknél (Joomal, WordPress, Drupal) ez nem okozhat gondot. Egyedi programkód esetén javasoljuk a PHPMailer használatát, azonban ehhez némi programozási ismeretre szükség lesz.
Maga a kód alapvetően könnyen használható.
Először töltsd le a https://github.com/PHPMailer/PHPMailer címről a csomagot.
A letöltött és kicsomagolt PHPMailer-master mappából az src mappában levő két fájlra lesz főleg szükséged:
- PHPMailer.php
- SMTP.php
Töltsd fel a tárhelydre az PHPMailer-master mappát és nevezd át PHPMailer-re.
Hozz létre egy pl. mailer.php nevű fájlt, amibe a következő tartalmat illeszd be:
<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;require 'PHPMailer/src/PHPMailer.php';
require 'PHPMailer/src/Exception.php';
require 'PHPMailer/src/SMTP.php';$mail = new PHPMailer();
$mail->IsSMTP(); // SMTP-n keresztuli kuldes
$mail->Host = gethostname(); // SMTP szerverek
$mail->SMTPAuth = true; // SMTP
$mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS; // SMTP titkosítás
$mail->Port = 465; // SMTP port$mail->Username = 'email@sajat-domain.hu'; // SMTP felhasználo
$mail->Password = 'IDE-ÍRD-A-JELSZAVÁT-AZ-EMAIL_FIÓKNAK'; // SMTP jelszo$mail->From = 'email@sajat-domain.hu'; // Felado e-mail cime
$mail->FromName = 'Vezeteknev Keresztnev'; // Felado neve
$mail->AddAddress('CÍMZETT@domain.tld', 'Név'); // Cimzett es neve
$mail->AddReplyTo('email@sajat-domain.hu', 'Név'); // Valaszlevel ide$mail->WordWrap = 80; // Sortores allitasa
$mail->IsHTML(true); // Kuldes HTML-kent$mail->Subject = 'Tárgy'; // A level targya
$mail->Body = 'Szövegtörzs <b>HTML-el formázva</b>'; // A level tartalma
$mail->AltBody = 'Szövegtörzs text-only '; // A level szoveges tartalmaif (!$mail->Send()) {
echo 'A levél nem került elküldésre';
echo 'A felmerült hiba: ' . $mail->ErrorInfo;
exit;
}echo 'A levelet sikeresen kiküldtük';
?>
A mailer.php fájlt meghívva a programkód elküldi a levelet a megadott címre.
Username = a bejelentkező email fiók neve
Password = a fenti email fiók jelszava
setFrom = jellemzően a fenti email cím, vagy ebből a domaintartományból egy cím
addAddress = címzett email címe