dodo1309
Messages postés218Date d'inscriptionmercredi 17 mai 2006StatutMembreDernière intervention30 mai 2011
-
30 août 2007 à 19:39
dodo1309
Messages postés218Date d'inscriptionmercredi 17 mai 2006StatutMembreDernière intervention30 mai 2011
-
31 août 2007 à 16:37
Bonjour
je posséde 30 checkbox et l'utilisateur ne peut en choché que 3 sur les 30
je voudrai savoir comment récupérer la valeur des 3 checkbox cochée dans 3 variables différentes
cs_sebastien_et_typh
Messages postés289Date d'inscriptionjeudi 5 octobre 2006StatutMembreDernière intervention11 juin 20103 30 août 2007 à 22:55
je serais toi j'essayerais peux etre de faire une fonction javascript que tu appel sur le onlick de tes checkboxs et qui attribut une valeur a un champ input du type hidden
(bien sur il te faut 3 champ hidden)
je sais pas si c'est la meilleur solution donc jespere t'aider un peu n'hesite pas a me demander si tu ne comprend pas
Personne ne peut se permettre de juger l'autre....
cs_sebastien_et_typh
Messages postés289Date d'inscriptionjeudi 5 octobre 2006StatutMembreDernière intervention11 juin 20103 30 août 2007 à 23:11
alor dabord la fonction javascript :
function attribut_valeur(var valeur){
if (document.getElementById("valeur1").value= =""){
document.getElementById("valeur1").value=valeur;
}else{
if (document.getElementById("valeur2").value==""){
document.getElementById("valeur2").value==valeur;
}else{
document.getElementById("valeur3").value=valeur;
}
ensuite pour ton formulaire tu rajoute trois champs :
et ensuite sur chaque checbox tu rajoute :
onClick ="attribut_valeur(this.value);"
voila en gros il ya surment des erreur de syntaxe car je vien de faire ca vite fait
Personne ne peut se permettre de juger l'autre....
dodo1309
Messages postés218Date d'inscriptionmercredi 17 mai 2006StatutMembreDernière intervention30 mai 2011 30 août 2007 à 23:30
j'ai déja une fonction dans le onclick
puisje l'integrer de cette manière :
var nbMax = 3;
var nbChecked = 0;
function ctrlnb(obj)
{
if (obj.checked)
{
nbChecked ++;
}
else
{
nbChecked --;
}
if (nbChecked > nbMax)
{
obj.checked = '';
nbChecked --;
alert('Nombre maximun de mots choisi attiend');
}
valeur = obj.value
if (document.getElementById("valeur1").value==""){
document.getElementById("valeur1").value=valeur;
}else{
if (document.getElementById("valeur2").value==""){
document.getElementById("valeur2").value==valeur;
}else{
document.getElementById("valeur3").value=valeur;
audayls
Messages postés373Date d'inscriptionsamedi 9 juillet 2005StatutMembreDernière intervention11 août 2008 30 août 2007 à 23:37
Alors je dirais qu'il ne faut pas faire un système par javascript car il suffit de désactiver javascript pour que celà ne fonctionne plus...
En revanche javascript peut avertir si l'on coche plus de 3 cases.
(J'ai pas testé j'ai pas de serveur sous la main) 1- Sur chaques checkbox tu rajoutes : "onclick="javascript: check_box(this);"".
2- Tu rajoutes le javascript suivant :
var nb = 0;
function check_box(box){
else {
if (box.value === true) {
if (nb === 3) alert("Vous avez déjà fait vos 3 choix.");
else nb++;
}
else nb--;
}
}
3- Essayes ce code PHP pour récuperer tes checkbox :
<?php
$i = -1;
while (isset($_POST['q'.++$i])) {
if (!empty($_POST['q'.$i])) {
if (!isset($case1)) $case1 = $i;
elseif (!isset($case2)) $case2 = $i;
elseif (!isset($case3)) $case3 = $i;
else {
// Ce qu'il faut faire s'il y a plus de 3 choix.
}
}
}
if (!isset($case1) OR !isset($case2) OR !isset($case3)) {
// Ce qu'il faut faire s'il y a moins de 3 choix.
}
?>
audayls
Messages postés373Date d'inscriptionsamedi 9 juillet 2005StatutMembreDernière intervention11 août 2008 30 août 2007 à 23:56
Regardes de plus près mon code PHP : il y a deux commentaires au cas où tes conditions ne sont pas respecter : à toi de renvoyer le formulaire avec un message d'erreur ;-)
J'ai nomé les champs hidden comme cela : hid1 --> hid3
et quand je fais
echo($_POST["hid1"]."
");
echo($_POST["hid2"]."
");
echo($_POST["hid3"]."
");
en cochant les 3 première cela ne m'affiche rien 1
le code et comme cela :
var nbMax = 3;
var nbChecked = 0;
function ctrlnb(obj)
{
if (obj.checked)
{
nbChecked ++;
}
else
{
nbChecked --;
}
if (nbChecked > nbMax)
{
obj.checked = '';
nbChecked --;
alert('Nombre maximun de mots choisi attiend');
}
else {
valeur = obj.value
if (document.getElementById("valeur1").value==""){
document.getElementById("valeur1").value=valeur;
}else{
if (document.getElementById("valeur2").value==""){
document.getElementById("valeur2").value==valeur;
}else{
document.getElementById("valeur3").value=valeur;
dodo1309
Messages postés218Date d'inscriptionmercredi 17 mai 2006StatutMembreDernière intervention30 mai 2011 31 août 2007 à 11:44
euh j'avais déja ces post ( le premier c'est lun des miens)
mais moi je ne cherche pas à lister les checkbox cheked mais je veux mettre la valeur des 3 checkbox dans 3 variable différente car c'est résultat vont être envoyé ds une bdd mysql