Vérification d'un champ

Résolu/Fermé
caro__48 Messages postés 242 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 18 mai 2017 - 17 mai 2010 à 14:35
Eastchild Messages postés 319 Date d'inscription lundi 23 juillet 2007 Statut Membre Dernière intervention 28 mars 2012 - 17 mai 2010 à 15:15
Bonjour,

j'ai un formulaire qui est liés a une page ou l'on retrouve une requête d'insertion de donnée dans une base.

Mon problème c'est que je voudrais passer tous les champs de mon formulaire pour voir si l'utilisateur a saisi au moins un champs dans le formulaire.
en fait je ne veux pas que cela créer des lignes vides dans ma table quand l'utilisateur clique sur le bouton insérer.
Je veux vérifier qu'au moins un des champs et rempli.

Comment puis je faire? Est-ce que quelqu'un a une idée??

merci d'avance pour votre aide.




2 réponses

Neliel Messages postés 6146 Date d'inscription jeudi 9 juillet 2009 Statut Contributeur Dernière intervention 20 mars 2017 1 691
17 mai 2010 à 14:37
Bonjour,

Teste la variable comme ceci:

if($_POST['...']!=NULL)
{
}

ou

if($_POST['...']!="")
{
}

1
caro__48 Messages postés 242 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 18 mai 2017 61
17 mai 2010 à 14:45
et sa passera tout les champs du formulaire?
je le met dans ma deuxième page et je peux a partir de la afficher un message.
merci je vais essayer
0
Neliel Messages postés 6146 Date d'inscription jeudi 9 juillet 2009 Statut Contributeur Dernière intervention 20 mars 2017 1 691
17 mai 2010 à 14:51
Non, il faut tous les prendre en compte:

Exemple:

Tu as ce formulaire:

<form action="mapage.php" method="post">
<input type="text" name="champ1" /><br />
<input type="text" name="champ2" /><br />
<input type="text" name="champ3" /><br />
<input type="submit" value="OK" /><br />
</form>


Sur la page, mapage.php, tu devras faire

if($_POST['champ1']!="" and $_POST['champ2']!="" and $_POST['champ3']!="")
{
...
}


Pour le cas ou aucun champ ne doit rester vide.

Pour qu'au moins un champ soit rempli, tu fais:

if($_POST['champ1']!="" or $_POST['champ2']!="" or $_POST['champ3']!="")
{
...
}
0
caro__48 Messages postés 242 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 18 mai 2017 61
17 mai 2010 à 14:53
ok merci, je vais essayer dessuite...
0
caro__48 Messages postés 242 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 18 mai 2017 61
17 mai 2010 à 15:10
merci c'est pile ce qu'il me fallait!!!

et merci d'avoir répondu aussi vite.
0
Eastchild Messages postés 319 Date d'inscription lundi 23 juillet 2007 Statut Membre Dernière intervention 28 mars 2012 31
17 mai 2010 à 14:39
Bonjour,

PHP a une fonction qui marche très bien, c'est isset.

exemple :

if (isset($_POST['champ1'])) {

$query = 'INSERT INTO matable (mavaleur) VALUE ('.$_POST['champ1'].')';
mysql_query($query);

}
0
Neliel Messages postés 6146 Date d'inscription jeudi 9 juillet 2009 Statut Contributeur Dernière intervention 20 mars 2017 1 691
17 mai 2010 à 14:44
La fonction isset() teste si une variable existe. Lorsqu'on envoie des données d'une page à l'autre grâce à un formulaire, même si on laisse les champs vides, les variables seront crées mais ne contiendrons rien... En sommes isset ne fonctionnera pas ici.
0
Eastchild Messages postés 319 Date d'inscription lundi 23 juillet 2007 Statut Membre Dernière intervention 28 mars 2012 31
17 mai 2010 à 14:46
Dans le cas présent, il faut rajouter un $_POST!="" pour que ça marche

en reprenant mon exemple :

if (isset($_POST['champ1']) && $_POST['champ1'])!="") {

$query = 'INSERT INTO matable (mavaleur) VALUE ('.$_POST['champ1'].')';
mysql_query($query);

}
0
caro__48 Messages postés 242 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 18 mai 2017 61
17 mai 2010 à 14:51
if($_POST['...']!=NULL)
{
}
sa va m'obliger a définir un champs obligatoire non??
0
Eastchild Messages postés 319 Date d'inscription lundi 23 juillet 2007 Statut Membre Dernière intervention 28 mars 2012 31
17 mai 2010 à 15:01
C'est peut être bien de mettre un message d'erreur pour signaler à la personne qu'il n'a pas bien rempli son formulaire.
0
caro__48 Messages postés 242 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 18 mai 2017 61
17 mai 2010 à 15:11
oui c'est ce que j'ai fait dans le if

j'ai dit que si les critères étaient remplis alors sa effectue la requete, sinon sa affiche qu'il faut remplir au moins un critère.
Mais merci du conseil ;)
0