TUTO PHP | Créer une newsletter  

Samet il y a 3 mois et demi Informatique Lecture: 10 minutes
Bonjour à tous!

Aujourd’hui je vais vous montrer comment faire un système de newsletter pour un site web.
Bien sur il faudra le placer dans un dossier accessible uniquement accessible par vous pour empêcher les utilisateur d'y accéder , mais dans ce tutoriel je vais pas aborder ce sujet.
Dans ce tutoriel je vais utiliser la fonction "mail" basique de php mais si vous voulez envoyer un email plus "professionnel" par exemple pour envoyer un fichier facilement je vous conseille d'aller voir un tutoriel sur PHPmailer.
Passons au code :

code html (à personnaliser)
<!DOCTYPE html>
<html>
<head>
  <title>Newsletter</title>
  <meta charset="utf-8">
  </head>
<body>
<form method="post">
  <input type="text" name="sujet">
  <textarea name="contenu_mail"></textarea>
  <input type="submit" name="submit">
</form>
</body>
</html>

code php (à personnaliser )
<?php 
$bdd = new PDO('mysql:host=localhost;dbname=nom', 'utilisateur', 'mdp');  // connexion à la base de données ; à changer par vos information
if (isset($_POST['submit'])) { // on vérifie si le formulaire a été validé
 if (isset($_POST['sujet']) AND isset($_POST['message'])) { // on vérifie si les champs sont complétés
  
$membres = $bdd->prepare("SELECT * FROM membres ORDER BY id"); // on récupère les information des membres


$sujet = $_POST['sujet']; // on déclare une variable contenant le sujet pour l'utiliser plus tard
$message = $_POST['message']; // on déclare une variable contenant le message pour l'utiliser plus tard

// déclaration de 'entête

$header.=  'MIME-Version: 1.0' . "\r\n"; 
$header.= 'From:"Easywebart"<contact@easywebart.eu>' . "\r\n";
$header.= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$header.='Content-type:text/html;charset="utf-8"'."\n";

// fin de l’entête


while ($m = $membres->fetch()) { //on créer un boucle qui va se répéter avec toute les adresse email
  mail($m['mail'], $sujet, $message,$header); // on envoi l'email
}
}else{
  echo "Tout les champs doivent être complété !"; // message qui s’affiche si les champs sont vide
}
}
?>

code final (à personnaliser )
<?php 
$bdd = new PDO('mysql:host=localhost;dbname=nom', 'utilisateur', 'mdp'); 
if (isset($_POST['submit'])) {
 if (isset($_POST['sujet']) AND isset($_POST['message'])) {
  
$membres = $bdd->prepare("SELECT * FROM membres ORDER BY id");


$sujet = $_POST['sujet'];
$message = $_POST['message']


$header.=  'MIME-Version: 1.0' . "\r\n"; 
$header.= 'From:"Easywebart"<contact@easywebart.eu>' . "\r\n";
$header.= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$header.='Content-type:text/html;charset="utf-8"'."\n";




while ($m = $membres->fetch()) {
  mail($m['mail'], $sujet, $message,$header);
}
}else{
  echo "Tout les champs doivent être complété !";
}
}
?>
<!DOCTYPE html>
<html>
<head>
  <title>Newsletter</title>
  <meta charset="utf-8">
  </head>
<body>
<form method="post">
  <input type="text" name="sujet">
  <textarea name="contenu_mail"></textarea>
  <input type="submit" name="submit">
</form>
</body>
</html>

voila c'est la fin de ce tutoriel , j’espère que vous avez aimé , n’hésitez pas à poser vos questions en commentaire !


This article has been written by Samet (admin)

Commentaires  

Veuillez vous connecter ou créer un compte pour poster un commentaire !


Blog Archive