PHPMailer - Inclure une variable/ou du php dans le corps du message
Bonjour à toute et à tous,
Je transmets des messages par le biais de PHPMailer.
Lorsque le message est figé, pas de soucis ce dernier est transmis.
En revanche dés lors que je souhaite inclure une variable (ou tout simplement écrire du php), le programme n'effectue pas sa tâche.
Ce qui est embêtant si je souhaite réaliser une newsletter incluant le prénom, changement d'adresse e-mail de destinataire...
D’où ma question, comment inclure du php dans un message sans faire planter phpmailer?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
| <!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Essai</title>
</head>
<body>
<h1> TEST PHP MAILER </H1>
<?php
use PHPMailer\PHPMailer\PHPMailer; //? Aucune idée sur l'utilité de cela
use PHPMailer\PHPMailer\Exception; //? Aucune idée sur l'utilité de cela
use PHPMailer\PHPMailer\SMTP; //? Aucune idée sur l'utilité de cela
require_once "PHPMailer/Exception.php";
require_once "PHPMailer/PHPMailer.php";
require_once "PHPMailer/SMTP.php";
$mail = new PHPMailer(true);
try
{
//Server settings
$mail->SMTPDebug = SMTP::DEBUG_SERVER; // Debugage. Est ce vraiment utile pour moi?
$mail->IsSMTP(); // Procole pour envoyer les emails.
$mail->Host = 'ssl0.ovh.net'; // Ou trouver cette information?
$mail->SMTPAuth = true; // Existe t-il une authentification à réaliser?
$mail->Username = 'monadresse'; // En lien avec l'authentification. Reste à trouver ou je peux avoir cela...
$mail->Password = 'motdepasse'; // Idem ci-dessus
$mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS; //
$mail->Port = 465; // S'il y a auth alors je dois mettre 587 car... aucune idée.
//Recipients
$mail->setFrom('expediteur', 'expediteur'); // Emetteur de l'email
$mail->addAddress('test-qc4065igv@srv1.mail-tester.com', 'Prenom'); // Faire un while pour générer les destinataires (1 destinataire par addadresse)
// Encodage
$mail->CharSet = 'UTF-8';
//Content
$mail->isHTML(true); // Email au ormat HTML
$mail->Subject = 'Newsletter';
$mail->Body = '
Bonjour '<?php echo $ma_variable;?>',
';
// Contenu au format HTML
$mail->AltBody = 'Message hors prise en compte HTML'; // Contenu hors format HTML
$mail->send();
// Je vais générer un message dans un fichier texte si ca plante
echo "email transmis";
}
catch (Exception $e)
{
echo "email non transmis";
}
?>
</body>
</html> |
D'avance merci pour votre aide.