bonjour à tous
je ne sais pas trop par quel bout m'y prendre donc je vous explique ce que j'ai besoin de réaliser et mes premiers bouts de code...
j'ai une liste écrite sous la forme:
j'ai une liste longue avec:
Code : Sélectionner tout - Visualiser dans une fenêtre à part $liste = "abstrait, art brut, art naïf, autres (mosaïque, avant garde)";
ces 6 éléments sont 6 checkbox
Code : Sélectionner tout - Visualiser dans une fenêtre à part $liste_longue = "abstrait, art brut, art naïf, nu, image, autres";
je veux qu'à chaque fois qu'un élément est dans liste, il soit coché dans mes checkbox
comment dois-je procéder car j'ai des mots composés (avec un blanc dedans) et je veux qu'à chaque fois que "autres" est dans $liste alors il me rajoute une cache en input pour y mettre la valeur qui se trouve entre parenthèses...
je pars du principe:
- qu'il faut que je fasse un traitement préalable sur tous les champs de $liste pour leur enlever le caractère blanc lorsqu'on est entre virgules donc:
$tuple_sansblanc = str_replace($substitutions, "blanc", $liste);
- qu'ensuite je découpe $liste (en prenant pour unite de découpage ", ") pour avoir chacune des valeurs dans un tableau:
$liste_decoupe = explode(", ", $tuple_sansblanc);
du coup j'obtiens donc dans $liste_decoupe les 4 valeurs suivantes:
abstrait
art brut
artblancnaïf
autres (mosaïqueblancavant garde)
à partir de là je dois donc vérifier par une boucle générale qui va dérouler tous les éléments de $liste_longue (récupération sur ma base mysql de $liste_longue)
donc j'ai un:
qui va passer un à un tous les éléments de la liste_longue
Code : Sélectionner tout - Visualiser dans une fenêtre à part while($data = mysql_fetch_assoc($req)) {
pour en faire afficher des checkbox classiques, qui ne seront pas cochés par défaut
et c'est maintenant que ça ne va plus... je n'arrive pas à traiter tous les cas...
car il faut que dans $liste_longue je complète ce fameux caractère blanc que j'ai entre 2 mots par exemple avec "art brut", que si l'élément ainsi transformé est égal à l'une des valeurs se trouvant dans $liste_decoupe alors le bouton sera checked et que si on trouve "autres" alors on récupère la valeur entre parenthèses et que à la fin à l'affichage j'ai bien des valeurs notées sans "blanc" donc avec un espace entre les 2 mots lorsqu'ils faisaient partie d'un même item...
voilà....
j'en suis là... je ne m'en sors pas...
si quelqu'un peut m'aider...
merci beaucoup
Partager