Une newsletter simple

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

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.