Travailleuuse06
Messages postés8Date d'inscriptionjeudi 22 décembre 2005StatutMembreDernière intervention 2 avril 2008
-
3 janv. 2006 à 12:49
Lyle56
Messages postés240Date d'inscriptionjeudi 1 mai 2008StatutMembreDernière intervention19 juillet 2012
-
14 mai 2012 à 12:10
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
Lyle56
Messages postés240Date d'inscriptionjeudi 1 mai 2008StatutMembreDernière intervention19 juillet 20122 14 mai 2012 à 12:10
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.