script newsletter no multi-enregistement mail
Posté : 25 août 2008, 17:33
boujour,
j'ai un petit probleme avec mon script newsletters en php/mysql, je n'arrive pas à ce l'enregistrement d'un email soit bloqué lorsqu'il se trouve déjà dans ma BDD. je vous donne mon script pour que vous puissiez m'aider et merci d'avance pour vos réponses.
voici le script newsletters:
j'ai un petit probleme avec mon script newsletters en php/mysql, je n'arrive pas à ce l'enregistrement d'un email soit bloqué lorsqu'il se trouve déjà dans ma BDD. je vous donne mon script pour que vous puissiez m'aider et merci d'avance pour vos réponses.
voici le script newsletters:
<p>
Insérer votre email pour s'abonner au newsletters du Site.<br />
<div class="nlettersend">
<form action="nlettersrecevoir.php" method="post">
<input type="text" style="width:125px;height:16px;" name="email" class="nlettersrec" />
<input type="image" name="img_nletters" src="img-nletters/bouton-ok.png" />
</p>
</form>
</div>
<?php
mysql_connect("localhost","root","");
mysql_select_db("coursphp");
$retour = mysql_query("SELECT COUNT(*) AS nbre_abonnes FROM nletters");
$nombre = mysql_fetch_array($retour);
?>
<p class="default"><?php echo$nombre['nbre_abonnes'];?> Newbies abonnés</p>
<?php
if(isset($_POST['email']))
{
if(!empty($_POST['email']))
{
$info = mysql_query("SELECT email FROM nletters");
$emailbis = mysql_fetch_array($info);
if($_POST['email'] != $emailbis['email'])
{
$email = mysql_real_escape_string(htmlspecialchars($_POST['email']));
function VerifierAdresseMail($email)
{
$Syntaxe='#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,5}$#';
if(preg_match($Syntaxe,$email))
return true;
else
return false;
}
if(VerifierAdresseMail($email))
{
mysql_query("INSERT INTO nletters VALUES('','$email')");
?>
<p class="cadre">
<img src="img-nletters/right.png" alt="" class="rectif"/>
Vous êtes bien abonné !
</p>
<?php
}
else
{
?>
<p class="cadre">
<img src="img-nletters/wrong4.png" alt="" class="rectif"/>
L'email rentrer n'est pas valide !
</p>
<?php
}
}
}
elseif(empty($_POST['email']))
{
?>
<p class="cadre">
<img src="img-nletters/wrong4.png" alt="" class="rectif"/>
Vous n'avez pas rempli le champ e-mail !
</p>
<?php
}
}
$titre="Newsletters The Newbie's Site.fr";
$resultat = mysql_query("SELECT email FROM nletters");
while( $donnees = mysql_fetch_array($resultat) or die(mysql_error()))
{
$email=$donnees['email'];
$contenu="CA MARCHE OU PO?";
$from = "From: hello <[email protected]>\nMime-Version:";
$from .= " 1.0\nContent-Type: text/html; charset=ISO-8859-1\n";
mail($email,$titre,$contenu,$from);
}
mysql_close();
?>