Version complète: sur le forum Webmaster Hub : Recuperation et traitement valeurs checkbox
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > PHP
etoundi
Bonjour,

j'ai un probleme et j'ai beau chercher sur le net, il m'est impossible de trouver la solution.

-J'ai un formulaire avec une partie ou il faut cocher des checkbox (choix multiple possible).
-Les resultats sont stockes dans le tableau handled[]
-j'insere avec la fonction implode les valeurs du tableau dans une BDD
-dans la BDD, dans le champs "handled", les resulats sont de la forme "nom1,nom2,nom3".
-je recupere les valeurs qui s'affichent sous la forme nom1,nom2,nom3.

Jusque la aucun probleme. Tout marche tres bien (je peux poster mon code pour ceux qui veulent de l'aide).

Or je voudrai traiter ces resultats.

En gros je voudrais transformer le resulats de mon tableau (ex: handled[]="nom1,nom2,nom3") en des variables $nom1, $nom2, $nom3 que je voudrais traiter separement.

Si quelqu'un a une idee. hypocrite.gif

Cordialement
astrofiles
Bonjour

une idée comme cela , à défaut de pouvoir définir dynamiquement le nom des variables, tu peux utiliser un tableau dynamique qui te permettrait de manier une valeur par check box... difficile d'en dire plus car on ne sait pas ce que tu veux faire au final smile.gif

$noms['nom1']= ....
$noms['nom2']= ....
$noms['nom3']= ....

Bien sur 'nom1' 'nom2' etc seraient en fait les valeurs de tes check box et pas les valeurs en dur comme cela .
etoundi
Je n'ai effectivement pas ete assez clair.

En fait il s'agit de recuperer les differentes valeurs des checkbox (nom1,nom2,nom3) qui sont stockes dans un champs "handled" de la base de donner et de les reutiliser pour d'autres requetes.

1- extraction du tableau handled[] (le resultat s'affiche sous la forme nom1, nom2, nom3)
2- les valeurs du tableau handled[] sont stockes dans des variables ($nom1, $nom2, etc c'est a dire handled[0], handled[1], handled[2], etc)
3- j'utilise ces variables dans des requetes de la formes "INSERT blablabla WHERE truc=handled[x]"

J'ai essaye explode() qui me retourne "array", on m'a conseille d'utiliser list() mais je ne sais pas l'utiliser.

sad.gif
Je bloque au 2. sad.gif
xpatval
Salut,

Pour le list():
CODE
list($nom1,$nom2,$nom3) = split(",",$handled);


Mais cela ne résoudra pas le problème si toutes les valeurs de $handled[] ne sont pas renseignées (ce que j'ai cru comprendre).

xpatval
etoundi
Merci pour la reponse.

Je peux recuperer les valeurs mais en effet ca ne marche que si toutes les valeurs de handled sont renseignes.

Pour celle qui sont vides, ca me mets : Notice: Undefined offset

Y a t'il un autre moyen ?

Ou alors tout simplement une facon de ne pas afficher la notice ?

Cordialement.
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.