Je vous explique mon petit problème.
Je dois refaire un bout de code en php pour un site web. Mon boss m'a demandé d'eviter les doublons dans ma base de donnée! C'est a dire que si une personne rentre une adresse mail et bien mon code doit verifier l'adresse dans la base avant de l'enregistrer ! Si celle ci existe je dois afficher un message sinon l'enregistrer dans la base
Voici mon code !!
<?
if(isset($_POST) && strlen($_POST['mail']) > 0 )
{
if(isset($_POST['inscription']) == true)
{
if(ereg("^(.+)@(.+)\\.(.+)$", $_POST['mail']))
{
$requete_txt = "INSERT INTO `test` ( `email` , `site_id` ) VALUES ( '".$_POST['mail']."', '".$site_id."');";
$bdd->query($requete_txt);
hydrus_utils_alert("Votre adresse a bien été enregistrée");
//print("Votre adresse a bien été enregistrée");
}
else
{
hydrus_utils_alert("Veuillez entrer une adresse valide !");
}
}
else if(isset($_POST['desinscription']) == true)
{
if(ereg("^(.+)@(.+)\\.(.+)$", $_POST['mail']))
{
$requete_txt = "DELETE FROM `test` WHERE `email` = '".$_POST['mail']."' AND `site_id` = '".$site_id."' ";
$bdd->query($requete_txt);
hydrus_utils_alert("Votre adresse a bien été supprimée");
//print("Votre adresse a bien été supprimée");
}
else
{
hydrus_utils_alert("Veuillez entrer une adresse valide !");
}
}
}
?>
Ca c'est le code qui ne verifie pas l'adresse!Maintenant voici ce que j'ai fais mais ca ne fonctionne pas !! Ne vous moquez pas trop de moi je debute en php !!
<?
mysql_connect("localhost");
mysql_select_db("test");
if(isset($_POST) && strlen($_POST['mail']) > 0 )
{
if(isset($_POST['inscription']) == true)
{
if(ereg("^(.+)@(.+)\\.(.+)$", $_POST['mail']))
{
$requete_txt = "INSERT INTO `test` ( `email` , `site_id` ) VALUES ( '".$_POST['mail']."', '".$site_id."');";
$bdd->query($requete_txt);
hydrus_utils_alert("Votre adresse a bien été enregistrée");
$sql = "SELECT * FROM corolle_mailing WHERE email='".$mail."'";
$req = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
$res = mysql_num_rows($req);
if($res!=0)
{
echo '<font color="red">Désolé, mais plusieurs infos existent déjà dans notre base.</font>';
}
else // Les infos n'existent pas, on insère les informations du formulaire dans la table
{
// insertion des valeurs dans la base
$query = "DELETE FROM `test` WHERE `email` = '".$_POST['mail']."' AND `site_id` = '".$site_id."' ";
$result= mysql_query($query);
}
mysql_close();
//print("Votre adresse a bien été enregistrée");
}
else
{
hydrus_utils_alert("Veuillez entrer une adresse valide !");
}
}
else if(isset($_POST['desinscription']) == true)
{
if(ereg("^(.+)@(.+)\\.(.+)$", $_POST['mail']))
{
$requete_txt = "DELETE FROM `test` WHERE `email` = '".$_POST['mail']."' AND `site_id` = '".$site_id."' ";
$bdd->query($requete_txt);
hydrus_utils_alert("Votre adresse a bien été supprimée");
//print("Votre adresse a bien été supprimée");
}
else
{
hydrus_utils_alert("Veuillez entrer une adresse valide !");
}
}
}
?>
Merci d'avance ..