Pb code php
loute08
Messages postés
230
Statut
Membre
-
Alain_42 Messages postés 5413 Statut Membre -
Alain_42 Messages postés 5413 Statut Membre -
Bonjour,
J'ai créé une newletter j'arrive à intégrer le mail dans ma BDD mais j'ai 2 problèmes :
- je n'arrive pas à vérifier le bon format de l'adresse mail
- je n'arrive pas à vérifier si l'adresse existe déjà dans la BDD si non alors j'intègre si oui alors je rejète
voilà mon code :
<?php
$email = filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL);
if(!email){
die("L'adresse email n'est pas valide, arrêt du traitement");
}
mysql_connect("localhost", "root", ""); //On remplace les information par la vraie bdd
mysql_select_db("contact_site");
switch ($_POST['inscriptiondesinscription']) {
elseif case 'inscription':
mysql_query("INSERT INTO newsletter VALUES('". $_POST['email'] ."')");
$message='Vous allez désormais recevoir notre Newsletter à ladresse '. $_POST['email'];
break;
case 'desinscription':
mysql_query("DELETE FROM newsletter WHERE email='". $_POST['email'] ."'");
$message='Votre désinscription a bien été prise en compte';
break;
default:
}
?>
Merci pour votre aide
J'ai créé une newletter j'arrive à intégrer le mail dans ma BDD mais j'ai 2 problèmes :
- je n'arrive pas à vérifier le bon format de l'adresse mail
- je n'arrive pas à vérifier si l'adresse existe déjà dans la BDD si non alors j'intègre si oui alors je rejète
voilà mon code :
<?php
$email = filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL);
if(!email){
die("L'adresse email n'est pas valide, arrêt du traitement");
}
mysql_connect("localhost", "root", ""); //On remplace les information par la vraie bdd
mysql_select_db("contact_site");
switch ($_POST['inscriptiondesinscription']) {
elseif case 'inscription':
mysql_query("INSERT INTO newsletter VALUES('". $_POST['email'] ."')");
$message='Vous allez désormais recevoir notre Newsletter à ladresse '. $_POST['email'];
break;
case 'desinscription':
mysql_query("DELETE FROM newsletter WHERE email='". $_POST['email'] ."'");
$message='Votre désinscription a bien été prise en compte';
break;
default:
}
?>
Merci pour votre aide
A voir également:
- Pb code php
- Code ascii - Guide
- Code puk bloqué - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code activation windows 10 - Guide
- Scanner qr code pc - Guide
3 réponses
Tu as qq chose de bizarre là:
switch ($_POST['inscriptiondesinscription']) {
elseif case 'inscription':
......
il faut:
switch ($_POST['inscriptiondesinscription']) {
elseif case 'inscription':
......
il faut:
switch ($_POST['inscriptiondesinscription']) {
case 'inscription':
......
oups j'ai mis ma bidouille lol voilà le bon code
<?php
$email = filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL);
if(!email){
die("L'adresse email n'est pas valide, arrêt du traitement");
}
mysql_connect("localhost", "root", ""); //On remplace les information par la vraie bdd
mysql_select_db("contact_site");
switch ($_POST['inscriptiondesinscription']) {
case 'inscription':
mysql_query("INSERT INTO newsletter VALUES('". $_POST['email'] ."')");
$message='Vous allez désormais recevoir notre Newsletter à ladresse '. $_POST['email'];
break;
case 'desinscription':
mysql_query("DELETE FROM newsletter WHERE email='". $_POST['email'] ."'");
$message='Votre désinscription a bien été prise en compte';
break;
default:
}
?>
<?php
$email = filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL);
if(!email){
die("L'adresse email n'est pas valide, arrêt du traitement");
}
mysql_connect("localhost", "root", ""); //On remplace les information par la vraie bdd
mysql_select_db("contact_site");
switch ($_POST['inscriptiondesinscription']) {
case 'inscription':
mysql_query("INSERT INTO newsletter VALUES('". $_POST['email'] ."')");
$message='Vous allez désormais recevoir notre Newsletter à ladresse '. $_POST['email'];
break;
case 'desinscription':
mysql_query("DELETE FROM newsletter WHERE email='". $_POST['email'] ."'");
$message='Votre désinscription a bien été prise en compte';
break;
default:
}
?>
Salut,
qqs erreurs, essayes comme ça:
qqs erreurs, essayes comme ça:
$email = filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL);
if(!$email){ //il te manquait le $
echo "L'adresse email n'est pas valide";
exit();
}else{
mysql_connect("localhost", "root", "") or die("Pb connexion serveur ".mysql_error()); //On remplace les information par la vraie bdd
mysql_select_db("contact_site") or die("Pb selection base ".mysql_error());
switch ($_POST['inscriptiondesinscription']) {
case 'inscription':
//verif si existe déja
$result=mysql_query("SELECT * FROM newsletter WHERE email='".$_POST['email']."'") or die("Pb req select ".mysql_error());
if(mysql_num_rows($result)>0){
echo "L'adresse email existe déja";
exit();
}else{
$insert=mysql_query("INSERT INTO newsletter SET(email) VALUES('". $_POST['email'] ."')")or die("Pb req insert ".mysql_error());
if($insert) $message='Vous allez désormais recevoir notre Newsletter à ladresse '. $_POST['email'];
}
break;
case 'desinscription':
$oter=mysql_query("DELETE FROM newsletter WHERE email='". $_POST['email'] ."'")or die("Pb req delete ".mysql_error());
if($oter)$message='Votre désinscription a bien été prise en compte';
break;
}
}
?>
Euh là dès que je clique sur valider ça me ressort un bout de code ...
$email = filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL); if(!$email){ //il te manquait le $ echo "L'adresse email n'est pas valide"; exit(); }else{ mysql_connect("localhost", "root", "") or die("Pb connexion serveur ".mysql_error()); //On remplace les information par la vraie bdd mysql_select_db("contact_site") or die("Pb selection base ".mysql_error()); switch ($_POST['inscriptiondesinscription']) { case 'inscription': //verif si existe déja $result=mysql_query("SELECT * FROM newsletter WHERE email='".$_POST['email']."'") or die("Pb req select ".mysql_error()); if(mysql_num_rows($result)>0){ echo "L'adresse email existe déja"; exit(); }else{ $insert=mysql_query("INSERT INTO newsletter SET(email) VALUES('". $_POST['email'] ."')")or die("Pb req insert ".mysql_error()); if($insert) $message='Vous allez désormais recevoir notre Newsletter à ladresse '. $_POST['email']; } break; case 'desinscription': $oter=mysql_query("DELETE FROM newsletter WHERE email='". $_POST['email'] ."'")or die("Pb req delete ".mysql_error()); if($oter)$message='Votre désinscription a bien été prise en compte'; break; } } ?>
$email = filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL); if(!$email){ //il te manquait le $ echo "L'adresse email n'est pas valide"; exit(); }else{ mysql_connect("localhost", "root", "") or die("Pb connexion serveur ".mysql_error()); //On remplace les information par la vraie bdd mysql_select_db("contact_site") or die("Pb selection base ".mysql_error()); switch ($_POST['inscriptiondesinscription']) { case 'inscription': //verif si existe déja $result=mysql_query("SELECT * FROM newsletter WHERE email='".$_POST['email']."'") or die("Pb req select ".mysql_error()); if(mysql_num_rows($result)>0){ echo "L'adresse email existe déja"; exit(); }else{ $insert=mysql_query("INSERT INTO newsletter SET(email) VALUES('". $_POST['email'] ."')")or die("Pb req insert ".mysql_error()); if($insert) $message='Vous allez désormais recevoir notre Newsletter à ladresse '. $_POST['email']; } break; case 'desinscription': $oter=mysql_query("DELETE FROM newsletter WHERE email='". $_POST['email'] ."'")or die("Pb req delete ".mysql_error()); if($oter)$message='Votre désinscription a bien été prise en compte'; break; } } ?>
effectivement j'avais oublié l'ouverture <?
je l'ai remise et j'ai la même erreur sauf que c'est ce bout qui s'affiche
0){ echo "L'adresse email existe déja"; exit(); }else{ $insert=mysql_query("INSERT INTO newsletter SET(email) VALUES('". $_POST['email'] ."')")or die("Pb req insert ".mysql_error()); if($insert) $message='Vous allez désormais recevoir notre Newsletter à ladresse '. $_POST['email']; } break; case 'desinscription': $oter=mysql_query("DELETE FROM newsletter WHERE email='". $_POST['email'] ."'")or die("Pb req delete ".mysql_error()); if($oter)$message='Votre désinscription a bien été prise en compte'; break; } } ?>
je l'ai remise et j'ai la même erreur sauf que c'est ce bout qui s'affiche
0){ echo "L'adresse email existe déja"; exit(); }else{ $insert=mysql_query("INSERT INTO newsletter SET(email) VALUES('". $_POST['email'] ."')")or die("Pb req insert ".mysql_error()); if($insert) $message='Vous allez désormais recevoir notre Newsletter à ladresse '. $_POST['email']; } break; case 'desinscription': $oter=mysql_query("DELETE FROM newsletter WHERE email='". $_POST['email'] ."'")or die("Pb req delete ".mysql_error()); if($oter)$message='Votre désinscription a bien été prise en compte'; break; } } ?>
Me revoilà:
essayes comme ça:
essayes comme ça:
<?php
$email = filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL);
if(!$email){ //il te manquait le $
echo "L'adresse email n'est pas valide";
exit();
}else{
mysql_connect("localhost", "root", "") or die("Pb connexion serveur ".mysql_error()); //On remplace les information par la vraie bdd
mysql_select_db("contact_site") or die("Pb selection base ".mysql_error());
switch ($_POST['inscriptiondesinscription']) {
case 'inscription':
//verif si existe déja
$result=mysql_query("SELECT * FROM newsletter WHERE email='".$_POST['email']."'") or die("Pb req select ".mysql_error());
if(mysql_num_rows($result)== 1){
echo "L'adresse email existe déja";
exit();
}else{
$insert=mysql_query("INSERT INTO newsletter SET(email) VALUES('". $_POST['email'] ."')")or die("Pb req insert ".mysql_error());
if($insert) $message='Vous allez désormais recevoir notre Newsletter à ladresse '. $_POST['email'];
}
break;
case 'desinscription':
$oter=mysql_query("DELETE FROM newsletter WHERE email='". $_POST['email'] ."'")or die("Pb req delete ".mysql_error());
if($oter)$message='Votre désinscription a bien été prise en compte';
break;
}
}
?>