Une newsletter simple

Soyez le premier à donner votre avis sur cette source.

Snippet vu 16 807 fois - Téléchargée 28 fois

Contenu du snippet

Mon code sert à faire une newsletter, c'est à dire vous envoyer un mail qui va vers tous les inscrits de votre site.

Source / Exemple :


Table
CREATE TABLE `membre` (
`id` INT NOT NULL AUTO_INCREMENT, 
`email` VARCHAR(255) NOT NULL,
INDEX (`id`)
);

CREATE TABLE `newsletter` (
`id` INT NOT NULL AUTO_INCREMENT, 
`titre` VARCHAR(255) NOT NULL, 
`contenu` VARCHAR(255) NOT NULL,
INDEX (`id`)
); 

Inscription
<form action="insert.php" method="post">Votre email : <input type="text" name="email"><br><br><input type="submit" value="Inscription" name="choix"> <input type="submit" value="Desinscription" name="choix"></form>

insert.php
<?
if (empty($_POST['email']))
{
echo 'Vous n\'avez rien mis dans le champ de texte';
}
else
{
mysql_connect("localhost","root","xxxxx");
mysql_select_db("xxxxx");

if ($_POST['choix'] == "Inscription")
{
$sql = mysql_query("INSERT INTO membre VALUES ('','$_POST[email]')");
echo '<center>Vous avez été rajouté</center>';
}
elseif ($_POST['choix'] == "Desinscription")
{
$sql = mysql_query("DELETE FROM membre WHERE email='$_POST[email]'");
echo '<center>Vous avez bien été désinscrit de nos fichiers</center>';
}
}
?> 

indentification
<form  name="identification" id="identification" method="post" action="admin2.php">      <table width="264" border="1" bordercolor="#FF0000" bgcolor="#999999">        <tr>          <td height="29"><strong>Mot de passe : </strong></td>          <td><input name="pass" type="password" /></td>        </tr>      </table>      <p>        <input type="submit" name="Submit" value="Envoyer">      </p>    </form>

envoi.php
<?
session_start();

if ($_POST['pass'] == 'toto')
{
?>

<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body><center><b>Les inscrits :</b>
<?
$_SESSION['pass'] = 'toto';

//------Etape1----------
//------Affichage des membres-------
mysql_connect("localhost","root","xxxxx");
mysql_select_db("xxxxx");

$sql = mysql_query("SELECT * FROM membre");
while ($donnees = mysql_fetch_array($sql))
{
?>

<center><br><? echo $donnees['email']; ?><br></center>
<?
}
mysql_close();
?>

<?
//--------Etape2---------
//--------Envoi de l'émail--------
?>

<center><form action="insert2.php" method="post">
Titre :<br><input type="text" name="titre"><br><br>
Contenu :<br><? //ici mettez un textarea <textarea name="contenu" cols="50" rows="20" ?><br>
<input type="submit" value="Envoyer">
</form></center>

</body>
</html>
<?
}
else
{
header("location:lol.php");
}
?>

insert2.php
<?
session_start();

if (!isset($_SESSION['pass']))
{

header("location:lol.php");
}
else
{
//-----Etape1------
//-----Enregistrement de la newsletter----
if (empty($_POST['titre']) AND $_POST['contenu'])
{
echo 'Vous avez oublie un champ';
}
else
{
mysql_connect("localhost","root","xxxxxx");
mysql_select_db("xxxxx");

$sql = mysql_query("INSERT INTO newsletter values('','$_POST[titre]','$_POST[contenu]')");
//-----Etape2------
//-----Envoie de la newsletter-----
$lol = mysql_query("SELECT email FROM membre");
while($donnees = mysql_fetch_array($lol))
{

//Maintenant on passe à l'envoi
//Les emails
$email="$donnees[email]<br>";
//Titre de l'émail
$sujet="$_POST[titre]";
//Le contenu
$contenu="$_POST[contenu]";
//L'entete, ici votre émail
$entete="FROM:ultime_power@hotmail.com\r\nReply-To:ultime_power@hotmail.com";
//On envoie
mail ($email,$sujet,$contenu,$entete);

} 
}
echo 'Newsletter bien envoyez';
}
?>

Conclusion :


Cette source est ma première, elle est aussi sur http://www.siteduzero.com/vostutos/?s=viewtuto&tutoid=206, si vous avez un probleme ici avec mon code, allez la bas car c'est un peu plus expliquer, au revoir.

A voir également

Ajouter un commentaire

Commentaires

cs_cha7ri
Messages postés
23
Date d'inscription
jeudi 29 novembre 2007
Statut
Membre
Dernière intervention
2 décembre 2009

good
Fanatik77410
Messages postés
1
Date d'inscription
dimanche 5 octobre 2008
Statut
Membre
Dernière intervention
5 octobre 2008

Biien biien
jdalton42
Messages postés
200
Date d'inscription
samedi 25 décembre 2004
Statut
Membre
Dernière intervention
19 août 2009

wai... meme si ta source est vieille tu as fais une faute dans le code. en effet, insert2.php lors de la recuperation des E-mails ( code que tu as mi: $email="$donnees[email]
";)

il ne faut pas de "
" ou sinon l'envoi ne marchera pas!
dyto
Messages postés
11
Date d'inscription
mercredi 5 mai 2004
Statut
Membre
Dernière intervention
31 mai 2004

merci à ceux du sdz qui m'ont aidés à faire ce tuto

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.