e59-website/include/main-functions.php
2024-08-31 18:13:01 +00:00

68 lines
2.5 KiB
PHP
Executable File

<?php // Functions
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require_once $rootFilePath . '/vendor/autoload.php';
function markdownContent($filePath, $rootFilePath) {
$markdownContent = file_get_contents($filePath);
require_once $rootFilePath . 'include/parsedown.php';
$parsedown = new Parsedown();
return $parsedown->text($markdownContent);
}
function sqlConnect($dbHost, $dbName, $dbUser, $dbPass) {
try {
$pdo = new PDO('mysql:host=' . $dbHost . ';dbname=' . $dbName . ';charset=UTF8mb4', $dbUser, $dbPass);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
error_log($e->getMessage());
die('<div class="error-message"><span>Erreur : ' . $e->getMessage() . " " . $dbUser . "@" . $dbHost . '</span></div>');
}
return $pdo;
}
function sendMail($from, $fromName, $to, $subject, $body, $altbody) {
$mail = new PHPMailer(true);
try {
// Paramètres du serveur SMTP
$mail->isSMTP(); // Utiliser SMTP
$mail->Host = 'outlook.office365.com'; // Serveur SMTP Exchange
$mail->SMTPAuth = true; // Activer l'authentification SMTP
$mail->Username = 'smtp@e59.fr'; // Nom d'utilisateur SMTP
$mail->Password = 'WTFdoto5678TFWT'; // Mot de passe SMTP
$mail->SMTPSecure = 'tls'; // Activer le cryptage TLS
$mail->Port = 587; // Port TCP pour TLS
$mail->CharSet = "UTF-8";
// Destinataires
$mail->setFrom($from, $fromName);
$mail->addAddress($to);
// Vous pouvez ajouter d'autres destinataires en utilisant $mail->addAddress()
// $mail->addAddress('autre-destinataire@example.com');
// Vous pouvez aussi ajouter des destinataires en copie (CC) ou en copie cachée (BCC)
// $mail->addCC('cc@example.com');
// $mail->addBCC('bcc@example.com');
// Pièces jointes (si nécessaire)
// $mail->addAttachment('/path/to/file.pdf'); // Ajouter un fichier joint
// Contenu de l'email
$mail->isHTML(true); // Activer le format HTML pour l'email
$mail->Subject = $subject;
$mail->Body = $body;
$mail->AltBody = $altbody;
// Envoyer l'email
$mail->send();
// Préparation de la requête de suppression
} catch (Exception $e) {
error_log("Erreur de Mailer: {$mail->ErrorInfo}");
}
}
?>