Bonjour,
J'ai un problème avec un de mes formulaires :
Comment puis-je récupérer les valeurs de mes "checkbox" si leur "name" est variable ?
Code:
1
2 <td><input type="checkbox" name="'.$rep["id_outil"].'" value="" checked="checked"></td>
Version imprimable
Bonjour,
J'ai un problème avec un de mes formulaires :
Comment puis-je récupérer les valeurs de mes "checkbox" si leur "name" est variable ?
Code:
1
2 <td><input type="checkbox" name="'.$rep["id_outil"].'" value="" checked="checked"></td>
Il s'agit de permettre de modifier les outils disponibles pour un client. Sur cette page, j'affiche tout les outils en cochant la case de ceux disponibles. l'admin peut modifier les checkbox et avec un autre script, je récupère ces valeur pour modifier les droit dans ma BDD.
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 while ($rep = mysql_fetch_array($req)){ if($rep['droit']=="oui"){ echo ' <tr> <td>'.$rep['nom_outil'].'</td> <td><input type="checkbox" name="'.$rep["id_outil"].'" value="" checked="checked"></td> </tr>'; } else{ echo ' <tr> <td>'.$rep['nom_outil'].'</td> <td><input type="checkbox" name="'.$rep["id_outil"].'" value=""></td> </tr>'; } }
Dans un input tu as name="" et value=""
Il serait quand même nettement plus simple d'avoir un nom toujours identique et de changer uniquement value="" (c'est une méthode beaucoup plus logique de fonctionnement ;))
Code:
1
2 <input type="checkbox" name="outil" value="'.$rep["id_outil"].'" checked="checked">
je rajouterais ça qui permet de recup toutes les checkbox cochées dans le tableau $_POST['outil']Code:<input type="checkbox" name="outil[]" value="'.$rep["id_outil"].'" checked="checked">
Concrètement, cela changerait quoi ? Cela me retournerait un tableau avec toutes les valeurs ? Expliques moi en détails please je suis un peu lent en php... :bug:
Je vais partir du code de boo64 car c'est celui que j'aurais mis perso...
en fait, en écrivant
name="outil[]"
une fois que le formulaire aura été envoyé car renverra un tableau contenant tous tes id_outils, ca devrait ressembler à quelque chose comme ça avec un print_r($_POST["outils"))
Ce qui veut dire que les outils dont les ID sont 1, 4 et 5 ont été cochés ;)Code:
1
2
3
4
5
6 Array ( 0 => 1 1 => 4 2 => 5 )
Merci je pense avoir compris ce qui me bloquait dans ma logique. Et maintenant je me sens encore plus bête...:oops:
Je ne savais pas comment récupérer un name qui est variable et vous me dites simplement de le mettre fixe.... ouais c'est clair que je me sens idiot là...:aie:
Encore une question, ça dérange pas si les names des checkbox sont identiques ?
pour être exacte on te dit de mettre le name fixe et la value variable
Merci beaucoup, même si la programmation ne sera jamais vraiment mon truc, j'espère qu'un jour je pourrai aider sur ce forum. :king: