Canalblog
Editer l'article Suivre ce blog Administration + Créer mon blog
Publicité
Dreamgratuit - Philosophie
13 mai 2007

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 :

news9

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

Publicité
Commentaires
T
qklskldkfdkf
J
Bonjour<br /> On peu en local envoyer une mail , il faut modifier le fichier php.ini, rubrique mail > <br /> smtp:smtp.fourniseur d'accès<br /> ensuite <br /> sendmail : votre mail<br /> Cela marche uniquement sous xindows XP <br /> Il est entendu qu'il faut une connexion internet active.<br /> exemple:<br /> [mail function] ; For Win32 only.<br /> SMTP = smtp.wanadoo.fr<br /> <br /> ; For Win32 only.<br /> sendmail_from =monadresse@wanadoo.fr
Archives
Publicité
Publicité