Import initial du site ship2net.fr : pages PHP, config, traductions t(), composer.json
This commit is contained in:
@@ -0,0 +1,103 @@
|
||||
<?php
|
||||
|
||||
use PHPMailer\PHPMailer\PHPMailer;
|
||||
use PHPMailer\PHPMailer\Exception;
|
||||
|
||||
require_once("../vendor/autoload.php");
|
||||
|
||||
|
||||
//************************************************************************************************************
|
||||
// Fonction d'envoi d'un email avec PHPMail
|
||||
// NB : Un tuto assez complet, et à jour (!), sur l'utilisation de PHPMailer
|
||||
// est disponible à https://alexwebdevelop.com/phpmailer-tutorial/#why-you-should-use-phpmailer
|
||||
// Reçoit :
|
||||
// - le nom du destinataire (ce champs peut être vide)
|
||||
// - adresse email du destinataire
|
||||
// - objet du message
|
||||
// - texte brut (peut contenir de l'HTML)
|
||||
// - nom de l'expéditeur (peut être vide)
|
||||
// - adresse de l'expéditeur
|
||||
// - fichier(s) joint(s) sous forme de tableau "$fichier_joints[N]['fichier']" et "$fichier_joints[N]['nom']"
|
||||
// /!\ Le nombre maxi de fichier joints est limité à 10 (cf le code). Si vous en mettez plus, les derniers ne seront pas traités...
|
||||
// Mais on peut changer cette valeur sans soucis...
|
||||
// Retour : Rien
|
||||
//************************************************************************************************************
|
||||
function Envoi_email($nom_destinataire, $adresse_destinataire, $objet, $texte_brut, $nom_expediteur, $adresse_expediteur, $fichiers_joints)
|
||||
{
|
||||
global $message_information;
|
||||
|
||||
// Entête HTML :
|
||||
$message_html = '
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<style type="text/css">
|
||||
body {font-family: Calibri, Verdana; color:rgb(0, 69, 99); }
|
||||
gras {font-weight: bold; }
|
||||
souligne {text-decoration: underline; }
|
||||
p {margin:8px 0px; padding:0px; }
|
||||
table {border-collapse: collapse; }
|
||||
table th {border: 1px solid rgb(0, 69, 99); background-color: rgb(0, 69, 99); color: rgb(255, 255, 255); padding: 5px 10px; }
|
||||
table td {border: 1px solid rgb(0, 69, 99); padding: 5px 10px; font-size:0.9em;}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
'.$texte_brut.'
|
||||
</body>
|
||||
</html>';
|
||||
|
||||
|
||||
$mail = new PHPMailer();
|
||||
|
||||
$mail->CharSet = 'UTF-8'; // Format d'encodage à utiliser pour les caractères
|
||||
|
||||
// $mail->SMTPDebug = 4; // Valeur entre 0 (normal) et 4 (full debug). Attention : mettre cette valeur > 0 dévoule certains paramètres confidentiels !
|
||||
|
||||
$mail->isSMTP();
|
||||
$mail->Host = 'ssl0.ovh.net'; // Adresse IP ou DNS du serveur SMTP
|
||||
$mail->Port = 587; // Port TCP du serveur SMTP (port SMTP chez OVH : 465=avec_SSL et 587=sans_SSL/avec_tls)
|
||||
$mail->SMTPAuth = TRUE; // Utiliser l'authentification
|
||||
|
||||
if($mail->SMTPAuth)
|
||||
{
|
||||
$mail->SMTPSecure = 'tls'; // Protocole de sécurisation des échanges avec le SMTP
|
||||
$mail->Username = 'do_not_answer@koriolan.tech'; // Adresse email à utiliser pour le compte SMTP
|
||||
$mail->Password = SMTP_PASSWORD; // Mot de passe de l'adresse email à utiliser
|
||||
}
|
||||
|
||||
if ($nom_expediteur == "") $mail->setFrom($adresse_expediteur);
|
||||
else $mail->setFrom($adresse_expediteur, $nom_expediteur); // L'email et l'alias (facultatif) à afficher pour l'envoi
|
||||
|
||||
if ($nom_destinataire == "") $mail->AddAddress($adresse_destinataire);
|
||||
else $mail->AddAddress($adresse_destinataire, $nom_destinataire); // L'email du destinataire et son alias (facultatif)
|
||||
|
||||
// $mail->addBCC('do_not_answer@koriolan.tech','ShipHeart by Koriolan'); // Destinataire BCC (idem AddAddress)
|
||||
|
||||
$mail->Subject = $objet; // Le sujet du mail
|
||||
|
||||
$mail->isHTML(TRUE); // Indique que le message dans Body sera en HTML
|
||||
$mail->Body = $message_html;
|
||||
$mail->AltBody = $texte_brut; // Texte brut alternatif
|
||||
|
||||
|
||||
for ($i = 0; $i < 10; $i ++) // Pièces jointes (limité à un maxi de 10 !):
|
||||
{
|
||||
if (!isset($fichiers_joints[$i]['fichier']) OR ($fichiers_joints[$i]['fichier'] == "")) break;
|
||||
else
|
||||
{
|
||||
if (isset($fichiers_joints[$i]['nom']) AND ($fichiers_joints[$i]['nom'] != "")) $mail->AddAttachment($fichiers_joints[$i]['fichier'], $fichiers_joints[$i]['nom']);
|
||||
else $mail->AddAttachment($fichiers_joints[$i]['fichier']);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if(!$mail->Send()) // Envoi de l'email et test du résultat
|
||||
{
|
||||
// $message_information .= "Erreur lors de l'envoi de l'email. PHPMailer Error = [" . $mail->ErrorInfo."]";
|
||||
}
|
||||
else
|
||||
{
|
||||
// $message_information .= "L'email a été envoyé correctement.";
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user