Checkbox avec POST
Résolu/Fermé
pitxu
Messages postés
689
Date d'inscription
vendredi 7 septembre 2007
Statut
Membre
Dernière intervention
25 mars 2015
-
18 sept. 2007 à 14:20
pitxu Messages postés 689 Date d'inscription vendredi 7 septembre 2007 Statut Membre Dernière intervention 25 mars 2015 - 19 sept. 2007 à 17:13
pitxu Messages postés 689 Date d'inscription vendredi 7 septembre 2007 Statut Membre Dernière intervention 25 mars 2015 - 19 sept. 2007 à 17:13
A voir également:
- Checkbox avec POST
- Post it windows - Télécharger - Agendas & Calendriers
- Brouillon post instagram - Guide
- Comment faire un post instagram avec plusieurs photos - Guide
- Code post - Télécharger - Vie quotidienne
- Biling post code ✓ - Forum Réseaux sociaux
6 réponses
pitxu
Messages postés
689
Date d'inscription
vendredi 7 septembre 2007
Statut
Membre
Dernière intervention
25 mars 2015
94
18 sept. 2007 à 15:39
18 sept. 2007 à 15:39
J'ai jamais décrit de comportement de boutons radio, 1 on et 2 off c'etait pour l'exemple, on pourrait très bien avoir 2 on et 1 off.
J'explique :
restriction d'acces à des repertoires avec sql
login pass mail rep1 rep2 rep3
toto titi toto@toto.fr 1 0 1
Si =1 la case est cochée, si =0 elle n'est pas cochée.
Je veux ,avec un clic pour cocher ou décocher, générer une requête SQL qui mettra la table à jour.
Voilà pourquoi je souhaite récupérer toutes les valeurs des cases à cocher.
J'explique :
restriction d'acces à des repertoires avec sql
login pass mail rep1 rep2 rep3
toto titi toto@toto.fr 1 0 1
Si =1 la case est cochée, si =0 elle n'est pas cochée.
Je veux ,avec un clic pour cocher ou décocher, générer une requête SQL qui mettra la table à jour.
Voilà pourquoi je souhaite récupérer toutes les valeurs des cases à cocher.
Serge_La
Messages postés
407
Date d'inscription
lundi 19 mars 2007
Statut
Membre
Dernière intervention
3 mars 2009
47
18 sept. 2007 à 21:07
18 sept. 2007 à 21:07
Bonjour pitxu,
il y a un problème avec ton code. Dès que quelcun fait un déclic sur n'importe quelle case, le submit se déclenche. Il faut d'abord laisser les gens choisir les cases et ensuite déclcencher submit avec un bouton soumettre.
Serge.
il y a un problème avec ton code. Dès que quelcun fait un déclic sur n'importe quelle case, le submit se déclenche. Il faut d'abord laisser les gens choisir les cases et ensuite déclcencher submit avec un bouton soumettre.
Serge.
pitxu
Messages postés
689
Date d'inscription
vendredi 7 septembre 2007
Statut
Membre
Dernière intervention
25 mars 2015
94
19 sept. 2007 à 17:11
19 sept. 2007 à 17:11
Dalida, je suis d'accord avec toi ... en partie.
Vous n'avez visiblement jamais développé un tableau avec des checkbox dynamiques sinon vous seriez au jus.
Comment détectes-tu qu'une checkbox a été décoché ?
ou comment fais-tu la différence entre une check box décoché et la première visite sur la page ou rien n'est posté ?
if (!isset($checkbox1)) { ....} ne fait pas la différence.
Ce que vous dites est vrai ... pour du statique, pas pour du dynamique.
La solution, je vous la donne puisqu'on m'a répondu sur un autre forum :
<input type="checkbox" name="checkbox1" onClick="document.form1.chk1.value=1;form1.submit();">
<input type="hidden" name="chk1" value="">
Ainsi, peu importe la valeur du checkbox, il ne nous sert qu'à afficher les valeurs relatives à la base de données SQL et à déclencher le POST. Les champs hidden seront postés indépendamment et c'est sur leur propriété value qu'on pourra effectuer des tests.
Vous n'avez visiblement jamais développé un tableau avec des checkbox dynamiques sinon vous seriez au jus.
Comment détectes-tu qu'une checkbox a été décoché ?
ou comment fais-tu la différence entre une check box décoché et la première visite sur la page ou rien n'est posté ?
if (!isset($checkbox1)) { ....} ne fait pas la différence.
Ce que vous dites est vrai ... pour du statique, pas pour du dynamique.
La solution, je vous la donne puisqu'on m'a répondu sur un autre forum :
<input type="checkbox" name="checkbox1" onClick="document.form1.chk1.value=1;form1.submit();">
<input type="hidden" name="chk1" value="">
Ainsi, peu importe la valeur du checkbox, il ne nous sert qu'à afficher les valeurs relatives à la base de données SQL et à déclencher le POST. Les champs hidden seront postés indépendamment et c'est sur leur propriété value qu'on pourra effectuer des tests.
pitxu
Messages postés
689
Date d'inscription
vendredi 7 septembre 2007
Statut
Membre
Dernière intervention
25 mars 2015
94
18 sept. 2007 à 14:28
18 sept. 2007 à 14:28
Pour être plus clair :
<?
if (isset($_POST)) extract ($_POST);
if (isset($checkbox1) || isset($checkbox2) || isset($checkbox3)) phpinfo(INFO_VARIABLES);
?>
<form name="form1" method="post" action="test.php">
<input type="checkbox" name="checkbox1" onClick="form1.submit();">
<input type="checkbox" name="checkbox2" onClick="form1.submit();">
<input type="checkbox" name="checkbox3" onClick="form1.submit();">
</form>
<?
if (isset($_POST)) extract ($_POST);
if (isset($checkbox1) || isset($checkbox2) || isset($checkbox3)) phpinfo(INFO_VARIABLES);
?>
<form name="form1" method="post" action="test.php">
<input type="checkbox" name="checkbox1" onClick="form1.submit();">
<input type="checkbox" name="checkbox2" onClick="form1.submit();">
<input type="checkbox" name="checkbox3" onClick="form1.submit();">
</form>
Pi_Xi
Messages postés
2244
Date d'inscription
samedi 24 mars 2007
Statut
Membre
Dernière intervention
22 janvier 2016
149
18 sept. 2007 à 15:05
18 sept. 2007 à 15:05
Bonjour,
pourquoi tu veux les récupérer avec la valeur "off"? je ne vois pas l'intérêt.
pourquoi tu veux les récupérer avec la valeur "off"? je ne vois pas l'intérêt.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
922
18 sept. 2007 à 15:19
18 sept. 2007 à 15:19
salut,
je reprends la remarque de Pi_Xi, quel intérêt ?
si l'un est à 'on' les deux autres sont à 'off', pas la peine de balader la valeur.
et tu décris là un comportement de boutons radio. un seul cliqué avec une valeur 'on', tous les autres à 'off'.
je reprends la remarque de Pi_Xi, quel intérêt ?
si l'un est à 'on' les deux autres sont à 'off', pas la peine de balader la valeur.
et tu décris là un comportement de boutons radio. un seul cliqué avec une valeur 'on', tous les autres à 'off'.
pitxu
Messages postés
689
Date d'inscription
vendredi 7 septembre 2007
Statut
Membre
Dernière intervention
25 mars 2015
94
19 sept. 2007 à 17:13
19 sept. 2007 à 17:13
Serge, non c'est normal chaque action sur un checkbox entraine le post du formulaire et une requete sql.
19 sept. 2007 à 09:39
la valeur renvoyée elle-même, on s'en tape.
tu pourrais vouloir 1 = 'casimir' et 2 = 'pandi panda' que je te dirais la même chose !
tu décris :
Seule la checkbox sélectionné est "posté" avec la valeur "on".
Comment faire pour que les 2 autres checkbox soient postés avec la valeur "off" ?
si à cela on ajoute le déclenchement du 'submit()' sur 'onChange' et cela fait que tu as 3 options mais que seule une et une seule peut être cochée.
propositions multiples + choix libre = checkbox :
Les cases à cocher (et les boutons « radio ») sont des interrupteurs marche/arrêt qui peuvent être actionnés par l'utilisateur. L'interrupteur est sur « marche » quand l'attribut checked de l'élément de commande est spécifié. Lors de la soumission du formulaire, seules les commandes de cases à cocher sur « marche » peuvent devenir des commandes réussies.
Dans un formulaire, plusieurs cases à cocher peuvent partager le même nom de commande. Ainsi, par exemple, les cases à cocher permettent aux utilisateurs de sélectionner plusieurs valeurs pour la même propriété. On utilise l'élément INPUT pour créer une commande de case à cocher.
propositions multiples + choix unique = radio.
Les boutons « radio » sont analogues aux cases à cocher, à la différence que, quand plusieurs boutons partage le même nom de commande, alors ils s'excluent mutuellement : quand l'un est mis sur « marche », tous les autres avec le même nom se mettent sur « arrêt ».
et pour savoir comment poster les valeurs qui ne sont pas cochées, pour moi c'est un problème qui ne pose pas puisque tu sais déjà qui est coché.
si dans ton script tu testes chaque valeur tu sauras que valeur renvoyée = 'on', sinon valeur = 'off'.
donc si tu veux toujours déclencher l'envoi sur le changement de valeur des checkbox, je répète et je maintiens qu'il ne sert à rien de vouloir envoyer les valeurs non cochées puisque tu peux les évaluer dans le script cible du formulaire.