PHP-isset
Gael
-
Gael -
Gael -
Bonjour,
Je travail actuellement sur un script en PHP qui utilise un formulaire HTML.
Je voudrais savoir si il est possible de vérifier si le formulaire que je veux exploiter a été saisie.
Je sais que l'on peut utiliser la fonction isset() pour vérifier si quelque chose est saisie, mais je ne vois pas comment introduire mon formulaire là dedans puisque c'est du HTML. (le formulaire renseigne environ 10 champs et il est trop long de verifier tout les champs par un $_REQUEST[duchamps].)
Merci
Je travail actuellement sur un script en PHP qui utilise un formulaire HTML.
Je voudrais savoir si il est possible de vérifier si le formulaire que je veux exploiter a été saisie.
Je sais que l'on peut utiliser la fonction isset() pour vérifier si quelque chose est saisie, mais je ne vois pas comment introduire mon formulaire là dedans puisque c'est du HTML. (le formulaire renseigne environ 10 champs et il est trop long de verifier tout les champs par un $_REQUEST[duchamps].)
Merci
A voir également:
- PHP-isset
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Alert php - Forum PHP
- Isset js ✓ - Forum Javascript
4 réponses
Bonjour
1 - isset vérifie si la variable existe, pas si quelque chose a été saisi dedans. Il faut utiliser is_empty pour tester s'il y a eu une saisie
2 - tu peux faire une boucle en utilisant un array qui contient les noms de tes 10 champs pour faire tes vérifications sans ré-écrire 10 fois le même code, mais ce n'est pas une bonne solution car en général, tu ne te contentes pas de tester l'existence. Tu as toujours des tests différents sur les divers champs, et des messages différents à afficher à l'utilisateur selon les erreurs de saisie qu'il a commises.
3- avis personnel : évite d'utiliser $_REQUEST, utilise plutôt $_POST, $_GET ou $_COOKIE pour mieux contrôler l'origine de tes variables
1 - isset vérifie si la variable existe, pas si quelque chose a été saisi dedans. Il faut utiliser is_empty pour tester s'il y a eu une saisie
2 - tu peux faire une boucle en utilisant un array qui contient les noms de tes 10 champs pour faire tes vérifications sans ré-écrire 10 fois le même code, mais ce n'est pas une bonne solution car en général, tu ne te contentes pas de tester l'existence. Tu as toujours des tests différents sur les divers champs, et des messages différents à afficher à l'utilisateur selon les erreurs de saisie qu'il a commises.
3- avis personnel : évite d'utiliser $_REQUEST, utilise plutôt $_POST, $_GET ou $_COOKIE pour mieux contrôler l'origine de tes variables
Salut,
Tu veux dire vérifier si chacun des dix champs a été completé ? Et sans avoir à faire isset() dix fois ?
isset() vérifie si une variable existe. Dès que tu envoies le formulaire, les dix variables existeront, qu'elles soit nulles ou non ! A l'exception des cases à cocher.
Pour savoir si le formulaire est envoyé, utilise isset() sur un champ de texte (ou n'importe quoi d'autre sauf un checkbox). S'il renvoi true alors le formulaire est envoyé.
Et pour vérifier si les champs ne sont pas nuls, tu dois le faire individuellement sauf si tu n'as que des champs de texte.
;-)
Tu veux dire vérifier si chacun des dix champs a été completé ? Et sans avoir à faire isset() dix fois ?
isset() vérifie si une variable existe. Dès que tu envoies le formulaire, les dix variables existeront, qu'elles soit nulles ou non ! A l'exception des cases à cocher.
Pour savoir si le formulaire est envoyé, utilise isset() sur un champ de texte (ou n'importe quoi d'autre sauf un checkbox). S'il renvoi true alors le formulaire est envoyé.
Et pour vérifier si les champs ne sont pas nuls, tu dois le faire individuellement sauf si tu n'as que des champs de texte.
;-)
Les listes déroulantes ont le même fonctionnement que les champs de texte.
Fais une boucle :
Tu auras la liste détaillée de ce qui est rempli ou non, et $formOk sera un booléen qui t'indiquera si tous les champs sont remplis.
A noter que tu ne dois effectuer cette boucle que si le formulaire est envoyé, en vérifiant avec isset($_POST['un_des_champs_(n'importe_lequel)'])
;-)
Fais une boucle :
$formOk = true; foreach($_POST as $key => $val){ if($val){ echo "$key n'est pas nul<br>"; } else{ echo "$key est nul<br>"; $formOk = false; } } echo $formOk ? "Tous les champs sont ok !<br>" : "Erreur...<br>";
Tu auras la liste détaillée de ce qui est rempli ou non, et $formOk sera un booléen qui t'indiquera si tous les champs sont remplis.
A noter que tu ne dois effectuer cette boucle que si le formulaire est envoyé, en vérifiant avec isset($_POST['un_des_champs_(n'importe_lequel)'])
;-)