PHP : créer une newsletter avec Dreamweaver (Part 8) - Envoi du mail de confirmation d’inscription
Lorsque l’utilisateur valide son formulaire d’inscription, il va déclencher un script d’envoi de mail de confirmation d’inscription sur la page confirm_newsletter.php.
Dans ce mail nous allons lui donner le lien vers la page de désabonnement qui figurera aussi au bas de notre future newsletter.
Pour déclencher ce script, nous devons récupérer l’ID d’enregistrement de l’utilisateur au moment même où il l’insère. Vous devez donc vous reporter au tutorial « Récupération d’un ID au moment de l’insertion ».
Vous devez modifier le code de votre page inscrip_newsletter.php comme suit :
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
$insertSQL = sprintf("INSERT INTO inscriptions (nom, mail, organisme, password, fonction) VALUES (%s, %s, %s, %s, %s)",
GetSQLValueString($_POST['nom'], "text"),
GetSQLValueString($_POST['mail'], "text"),
GetSQLValueString($_POST['organisme'], "text"),
GetSQLValueString($_POST['password'], "text"),
GetSQLValueString($_POST['fonction'], "text"));
mysql_select_db($database_maConnection, $maConnection);
$Result1 = mysql_query($insertSQL, $maConnection) or die(mysql_error());
$theID = mysql_insert_id();
$insertGoTo = "confirm_newsletter.php?id_abonne={theID}";
Ouvrez ensuite la page confirm_newsletter.php. Dans Application >> Liaisons >> Jeu d’enregistrement, renseignez la fenêtre comme ci-dessous :
Il faut maintetant déclencher l’envoi d’un mail confirmant l’inscription et donnant le password et un lien de désabonnement à l’utilisateur.
Ouvrez la page confirm_newsletter.php en mode code. Insérez ce code après celui créé par Dreamweaver lors de la création du jeu d’enregistrement Recordset1 :
<?php
$email=$row_Recordset1['mail'];
$sujet="Votre inscription à notre newsletter";
$message="Bonjour,\n\n";
$message.="Vous venez de vous inscrire à la newsletter de monsite.com \n";
$message.="Voici vos codes d'accès : \n";
$message.="Login :".$row_Recordset1['mail']."\n";
$message.="Mot de passe :".$row_Recordset1['password']."\n";
$message.="Si vous souhaitez vous désabonner, cliquez ici : http://www.monsite.com/desabonne_newsletter.php?id_abonne=".$row_Recordset1['id_abonne']."\n";
$headers="From: moi@monsite.com \n";
$headers.="MIME-version: 1.0\n";
$headers.="Content-type: text/html; charset= iso-8859-1\n";
$headers.="Bcc: moi@monsite.com\n";
mail($email,$sujet,$message,$headers);
?>
NB : vous ne pouvez pas tester ce fonctionnel en local. Vérifiez auprès de votre hébergeur que la fonction mail est activée pour votre type d’hébergement où voir ici comment procéder. Pour le test de ce fonctionnel, créez une inscription à votre nom. Vous devez recevoir le mail ci-dessus.
Nous verrons ultérieurement comment faire la page desabonne_newsletter.php.
Ce billet fait partie du tutorial dreamweaver newsletter