Newsletter php

Signaler
Messages postés
8
Date d'inscription
jeudi 22 décembre 2005
Statut
Membre
Dernière intervention
2 avril 2008
-
Messages postés
240
Date d'inscription
jeudi 1 mai 2008
Statut
Membre
Dernière intervention
19 juillet 2012
-
Bonjour,
je suis en train de créer une newsletter en php et j'aurais voulu vérifier si un utilisateur est déjà dans ma base de données avant de le supprimer mais également vérifier si l'adresse mail est bien une adresse valide
Mon code est le suivant :
if (empty($_POST['email'])) {
echo '
Vous n avez pas entré votre mail

';
}
elseif($_POST['action'] == 'inscription'){
### Cas d'un abonnement
db_connect();
$ajout = mysql_query("INSERT INTO newsletter_tbl (email) VALUES('$_POST[email]')");
if ($ajout){
echo '

Votre mail a bien été ajoutée

';
}
}
### Cas d'un désabonnement
elseif ($_POST['action'] =='desinscription'){
db_connect();
mysql_query("DELETE FROM newsletter_tbl WHERE email='$_POST[email]'");
echo '
Vous avez bien été désinscrit de nos fichiers

';
}

Merci

4 réponses

Messages postés
346
Date d'inscription
jeudi 7 avril 2005
Statut
Membre
Dernière intervention
26 mars 2012

salut

tout d'abord tu va chercher les email
$sql=SELECT email FROM newsletter WHERE email ='$email'
$sql2 =mysql_query($sql)

ensuite tu en fait un tableau avec mysql_fetch_assoc()

mysql_fetch_assoc($sql2)

puis tu compare la valeur envoyé avec la valur du tableau

pour l'email valide
doit yavoir plein de code sur ce site

++
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
39
Salut,

moi je ferais



mysql_query('SELECT 1 FROM matable WHERE email="'.$email.'";') or die...

In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy

Mon site (articles sur la programmation et programmes)
Messages postés
2
Date d'inscription
vendredi 6 janvier 2012
Statut
Membre
Dernière intervention
14 janvier 2013

Bjr, je demande de l'aide pour la publication d'un site php que j'ai conçu hors ligne.
Messages postés
240
Date d'inscription
jeudi 1 mai 2008
Statut
Membre
Dernière intervention
19 juillet 2012
2
Bonjour,

Pour valider l'email regarde du coter des REGEX.

Pour faire les choses "correctement" je te conseil de faire une classe utilitaire pour la validation et la recherche de mail.

Donc en gros une classe avec deux méthodes :

public boolean isValidEmail(emailAValider) {

}

public boolean isInDatabaseEmail(emailAValider) {

}

ton code deviens alors :
if (empty($_POST['email'])) 
{
  echo '
Vous n avez pas entré votre mail

';
} 
else if(!isValidEmail($_POST['email'])) {
  echo '
Votre mail ne semble pas valide

';
} else {
   boolean mailExistInDatabase = isInDatabaseEmail($_POST['email']);
   if($_POST['action'] == 'inscription' && mailExistInDatabase ){
      ### Cas d'un abonnement mail existant 
      echo '
Votre mail est déjà enregistré

';
   } else if ($_POST['action'] =='desinscription' && !mailExistInDatabase )
      ### Cas d'un désabonnement mail inexistant 
      echo '
Votre mail n'est pas enregistré

';
   } else {
        db_connect();
       if($_POST['action'] == 'inscription') {
          $ajout = mysql_query("INSERT INTO newsletter_tbl (email) VALUES('$_POST[email]')");
          if ($ajout){
             echo '

 Votre mail a bien été ajoutée 

';
          } 
       }
       else{
          $suprime = mysql_query("DELETE FROM newsletter_tbl WHERE email='$_POST[email]'");
          if ($suprime ){
            echo '
Vous avez bien été désinscrit de nos fichiers

';
          }
      }
  }
}


Bon la c'est un peut le bazar, il y as moyen d'optimiser tout cela mais la base est déjà posée.


Sans maitrise, la puissance n'est rien
Il ne faut pas vendre la peau de l'ours, non il ne faut pas.