Prévenir un array vide posté

Petit nouveau ! | 6 Messages

30 mars 2006, 21:22

Bonjour à tous,

Y a t-il un moyen de vérifier si un tableau construit à partir de valeurs postées est vide ou non car je voudrais afficher un message d'erreur dans ce cas au lieu d'une belle erreur : Warning: Invalid argument supplied for foreach() ...
J'ai fait des recherches et tests mais en vain. :cry:

J'ai un tableau indicé dont le nombre de valeur est en fonction du choix de l'utilisateur (donc aléatoire) que voilà :
<input type="radio" name="r[<?php echo ($i); ?>]" value="<?php echo ($rowchoix['idchoix']); ?>" id="<?php echo ($rowchoix['idchoix']); ?>">
Je le traite dans la page qui le recoit comme ceci :
foreach($_POST['r'] as $value) {
arguments ....
}
Mon problème c'est que je ne sais pas vérifier si mon tableau contient au moins une valeur :x

Quelqu'un aurait il une solution ????

Merci d'avance et bon php....
Modifié en dernier par elcoyotos le 30 mars 2006, 21:46, modifié 1 fois.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

30 mars 2006, 21:37

Salut,
Passe par count()

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Petit nouveau ! | 6 Messages

30 mars 2006, 21:44

Alors voilà, à force de chercher, j'ai trouvé. Je donne ma solution au cas ou cela pourrai servir :
if (count($_POST["r"]) != $_POST['limit']) { 
echo ("Vous devez répondre à toute les questions");
}
else {
foreach($_POST['r'] as $value) {
arguments ....
}
Ou $_POST['limit'] est le nombre de question choisi par l'utilisateur....
Un tout bete count :oops:

Petit nouveau ! | 6 Messages

30 mars 2006, 21:45

Merci Truc je viens de voir ta réponse :lol: