Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2316 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  chekbox dynamiques

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

chekbox dynamiques

n°918095
uzul33
Posté le 08-12-2004 à 16:46:21  profilanswer
 

Bonjour à tous,
 
je fais actuellement une appli en php mysql.
je dois créer une liste dynamique générée par un requete sql
en gros :
une categorie dispose de plusieurs rubriques (id_rubrique et libelle)
j'affiche un tableau dans lequel je place un checkbox devant chaque id_rubrique et son libelle.
postulat de départ, je ne connais pas à l'avance le nombre de rubriques comprise dans la catégorie sélectionnée par l'utilisateur.
je souhaiterai savoir comment pouvoir nommer dynamiquement chaque checkbox afin de pouvoir vérifier après un "post" le ou lesquels sont "checked" pour retourner les id_rubriques et leurs libelle
-- je ne sais pas si je suis clair ????
Merci de votre aide

mood
Publicité
Posté le 08-12-2004 à 16:46:21  profilanswer
 

n°918136
Scarf3ss3
Posté le 08-12-2004 à 17:23:58  profilanswer
 

<input name=$id_rubrique>

n°918187
uzul33
Posté le 08-12-2004 à 18:17:44  profilanswer
 

si je considère ta réponse j'aurai :
<input name="<? echo $id_rubrique;?>" value="<? echo $id_rubrique;?>" type="checkbox">.
Sachant que je peux en avoir une bonne dizaine, comment puis-je à l'aide d'un echo, par exemple, afficher les checkbox cochées (pour lesquelles on aurait un truc du genre $id_rubrique=$id_rubrique !)
Mon prob c'est que je ne récupère rien : aucune valeur $id_rubrique

n°918215
sielfried
Posté le 08-12-2004 à 18:52:29  profilanswer
 

Code :
  1. while ($rub = mysql_fetch_assoc($res)) {
  2.    ...
  3.    echo '<input type="checkbox" name="id_rubrique[]" value="'.$rub['id_rubrique'].'" />';
  4.    ...
  5. }


 
Ensuite tu récupères le tableau $_POST['id_rubrique'] qui contient la liste des id.


Message édité par sielfried le 08-12-2004 à 18:53:20

---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°918825
uzul33
Posté le 09-12-2004 à 14:58:17  profilanswer
 

Merci de ta réponse Sielfried, cependant au vu de mon niveau, il me reste quelques cailloux dans ma chaussure :
problème au niveau du nom (name="id_rubrique[]" )
2 pb, lorsque je poste je ne peux lire mon tableaux et encore moins sont contenu
3 pb, je n'ai pas moyen de vérifier si checkbox is checked !
En fait je vois bien le truc : stocker dans un tableau les id_rubriques mais hic ! je sèche !

n°918851
rufo
Pas me confondre avec Lycos!
Posté le 09-12-2004 à 15:15:22  profilanswer
 

on va me jeter des pierres, mais comme je connaissais pas le coup du <input name="nomchk[]" /> (je parle des []), ben j'ai utilisé javascript. Quand je clique sur la case, le concatène dans un input hidden les valeurs des cases à cocher en tant que chaîne de caractères, séparées par un caractère (dépend des valeurs, la , ou le #). Après, côté php, je fais un explode()...

n°918856
esox_ch
Posté le 09-12-2004 à 15:19:11  profilanswer
 

Le javascript c'est pas fiable

n°918864
uzul33
Posté le 09-12-2004 à 15:22:16  profilanswer
 

là, je t'avoue que je suis largué, n'existe-il pas un moyen plus léger pour traiter ce genre de cas, car même en solutionant simplement le truc dans la première page au moment du "post" j'ai que dalle sur la page qui reçoit.
J'ai eu un cas similaire mais les checkbox portaient toutes un nom différent, donc à l'aide d'un simple if(macheck==mavaleur)... et tout baignait, mais là ! c'est hard je pédale grave !! je ne vois pas de solution !

n°918917
sielfried
Posté le 09-12-2004 à 16:05:22  profilanswer
 

UZUL33 a écrit :

Merci de ta réponse Sielfried, cependant au vu de mon niveau, il me reste quelques cailloux dans ma chaussure :
problème au niveau du nom (name="id_rubrique[]" )
2 pb, lorsque je poste je ne peux lire mon tableaux et encore moins sont contenu


 
C'est-à-dire ? $_POST['id_rubrique'] ne contient rien ?
 
Ton formulaire est bien passé en post ?


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°918923
uzul33
Posté le 09-12-2004 à 16:12:30  profilanswer
 

rien !
je fais un test sur la page "réponse" :
if($id_rubrique==$id_rubrique){ echo $id_rubrique; echo "full";}else{echo "empty";} ---> il m'affiche "full" !
 
dans la page appelante j'ai bien un while($truc=mysql_fetch_array($machin) ....  
<input name="<? echo $id_rubrique;?>" value="<? echo $id_rubrique;?>" type="checkbox">
donc je peux bien tester si $id_rubrique(unique)==$id_rubrique(checkée) mais j'ai queud !

mood
Publicité
Posté le 09-12-2004 à 16:12:30  profilanswer
 

n°918960
Mara's dad
Yes I can !
Posté le 09-12-2004 à 16:56:21  profilanswer
 

<input name="id_rubrique[]>" value="<? echo $id_rubrique;?>" type="checkbox">  
 
Ensuite :
 
foreach( $_POST['id_rubrique'] as $rub )
{
   echo( "Id = $rub<br>" );
}


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°918967
uzul33
Posté le 09-12-2004 à 17:05:08  profilanswer
 

le name="id_rubrique[]" ou name="<? id_rubrique[];?>" ou encore name="<? echo id_rubrique[];?>" génère un fatal error !!!

n°918979
Mara's dad
Yes I can !
Posté le 09-12-2004 à 17:15:09  profilanswer
 

UZUL33 a écrit :

le name="id_rubrique[]" ou name="<? id_rubrique[];?>" ou encore name="<? echo id_rubrique[];?>" génère un fatal error !!!


 
Pour name="<? id_rubrique[];?>" ou encore name="<? echo id_rubrique[];?>", je veux bien, c'est du n'importe quoi !
 
Mais name="id_rubrique[]", c'est bon, sauf si tu as codé ça n'importe où ce qui ne m'étonerais pas :/
 
Montre voir un peu ton code. La boucle while sur mysql_fetch_array par exemple...


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°918982
uzul33
Posté le 09-12-2004 à 17:21:15  profilanswer
 

j'aime bien le ton qu tu emploi ...
--  
while($lIDRUB=mysql_fetch_array($rsIDRUB))
{  $id_rubrique=$lIDRUB['id_rubrique']; ?>
<tr>
<td><input name="rubrique[]" value="<? echo $id_rubrique;?>" type="checkbox"></td>
</tr><?
} mysql_free_result($rsIDRUB);?>
--
pour la page appelée :
---
$rktIDRUB="SELECT * FROM `rubrique` WHERE `id_categorie`='".$id_categorie."' ORDER BY `id_rubrique` ASC";
$rsIDRUB=mysql_query($rktIDRUB) or ...
while($lIDRUB=mysql_fetch_array($rsIDRUB))
{ // juste un test
 if($rubrique[id_rubrique]==$id_rubrique){ echo $rubrique[id_rubrique]; echo "full";}else{echo "empty";}
}
 --> resultat après ces modifs pas de fatal error mais n fois le mot full cra test = true ! mais pas de value !!

n°919002
uzul33
Posté le 09-12-2004 à 17:31:55  profilanswer
 

malheureusement avec la syntaxe de la page appelante decrit plus haut, sur la page appelée j'ai de tout manière avec quelque manière que le code soit écrit "FULL" donc mes paramètres ne quittent même pas ma page appelante, enfin c'est l'impression que ca me donne ?!

n°919009
uzul33
Posté le 09-12-2004 à 17:37:46  profilanswer
 

Ok, après grand nettoyage, une nouvelle tasse de café : c'est cool ca return bien les id_rubriques !!
Je vous remercie de votre aide j'ai pu résumer le code en trois lignes !
--  
à charge de revanche, messieurs scarf3ss3, Sielfried, rufo, esox_ch et Mara's dad (cette fois avec les yeux en face des trous !)

n°919060
Mara's dad
Yes I can !
Posté le 09-12-2004 à 18:25:20  profilanswer
 

UZUL33 a écrit :

j'aime bien le ton qu tu emploi ...


Ben quand on lit ca

Citation :

<? id_rubrique[];?>


On se demande si celui qui a osé essayé sait ce qu'il fait tu ne crois pas ? :o
 
M'enfin, ça marche et t'as compris, c'est le principal :D


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  chekbox dynamiques

 

Sujets relatifs
Variables dynamiques en KSHlistes déroulantes dynamiques + Oracle + Javascript
Business Object comment insérer des filtres dynamiques en VBproqrammer des filtres dynamiques en VB sous BO Aidez moi!!
[Delphi] tableaux dynamiques & paramètresFaire des menus dynamiques en PHP
Boîtes à cocher ou boîtes d'option dynamiques dans Excel[PHP][Abandon ;) ] Listes dynamiques en PHP HTML seulement
Les analyseurs dynamiques & de couverture[VB6] Tableaux dynamiques, effacer un element.
Plus de sujets relatifs à : chekbox dynamiques


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)