Pb de variable avec mysql
Résolu/Fermé
aveuglemspas_sourd
Messages postés
286
Date d'inscription
mercredi 23 mai 2007
Statut
Membre
Dernière intervention
12 octobre 2009
-
25 août 2007 à 21:24
aveuglemspas_sourd Messages postés 286 Date d'inscription mercredi 23 mai 2007 Statut Membre Dernière intervention 12 octobre 2009 - 27 août 2007 à 16:54
aveuglemspas_sourd Messages postés 286 Date d'inscription mercredi 23 mai 2007 Statut Membre Dernière intervention 12 octobre 2009 - 27 août 2007 à 16:54
Bonjour,
je realise un simple formulaire avec des case a cocher.je recupere ces variable pour les traiter avec une requete mysql, mon probleme est que je ne voudrai selectionner que les case qui sont coché..j'ai essayé de faire :
select var1, var2 , var 3etc.. mais quand une des case n'est pas cocher , le formulaire ne transmet pas de valeur et ma requete ne marche pas..
Comment faire pour que me requete sql ne traite que les valeur des case coché.
j'espere avoir été clair.. merci a tous
je realise un simple formulaire avec des case a cocher.je recupere ces variable pour les traiter avec une requete mysql, mon probleme est que je ne voudrai selectionner que les case qui sont coché..j'ai essayé de faire :
select var1, var2 , var 3etc.. mais quand une des case n'est pas cocher , le formulaire ne transmet pas de valeur et ma requete ne marche pas..
Comment faire pour que me requete sql ne traite que les valeur des case coché.
j'espere avoir été clair.. merci a tous
A voir également:
- Pb de variable avec mysql
- Mysql community server - Télécharger - Bases de données
- Impossible de créer le fichier de travail. vérifiez la variable d'environnement temp ✓ - Forum Word
- Vba range avec variable ✓ - Forum VB / VBA
- Le fichier contient un programme écrit en python. le programme construit un mot secret mais il ne l'affiche pas. modifiez ce programme afin que à chaque itération de la boucle : la variable a augmente de 2 la variable b diminue de 1 ajoutez une instruction pour faire afficher le mot secret construit. quel est ce mot secret ? ✓ - Forum Python
4 réponses
Ambobo
Messages postés
28
Date d'inscription
dimanche 26 août 2007
Statut
Membre
Dernière intervention
8 mars 2009
49
27 août 2007 à 00:01
27 août 2007 à 00:01
Bonjour,
D'abord, il te faut être plus clair s'il te plait, peux-tu nous poster le code source.
Comment veux-tu traiter les cases à cocher avec ta requète, et quel type de requète : à priori quand on fait un SELECT en mysql, c'est pour chercher un enregistrement dans une base de donnée.
En attente de ta réponse
D'abord, il te faut être plus clair s'il te plait, peux-tu nous poster le code source.
Comment veux-tu traiter les cases à cocher avec ta requète, et quel type de requète : à priori quand on fait un SELECT en mysql, c'est pour chercher un enregistrement dans une base de donnée.
En attente de ta réponse
aveuglemspas_sourd
Messages postés
286
Date d'inscription
mercredi 23 mai 2007
Statut
Membre
Dernière intervention
12 octobre 2009
20
27 août 2007 à 13:46
27 août 2007 à 13:46
Bonjour,
merci d'avoir repondu.
hm si je n'ai pas poster de code source c'est que je n'en ai pas encore:) j'essai d l'imaginer avant.
Bref je vais essayer d'etre plus clair.
J''ai un simple formulaire avec des case a cocher. il peut donc y avoir plusieurs cases de cocher , je transmet ces valeurs par GET ou POST et j'interroge ma base de donnée en utilisant ces variable dans le select.
Si c'etait un bouton de type radio , il y aurait une seul variable et cela ne poserait pas de probleme.
Mais moi je veux interrogé ma base de donnée en fonction des cases qui ont été coché.
Mon probleme est que dans mon select , je ne peux pas mettre toutes les variable puisque si une case n'est pas coché, la variable transmise sera nul et mon select ne marchera pas.
je simplifie :
voici mon formulaire
case1 case 2 case3 case4 case5 case6 case7
coché oui non oui non non oui oui
je veux donc effectuer ma requeteen utilisant simplement les case qui ont été coché mais puisque je ne peux pas savoir a l avance quel case vont etre coché comment puis je faire?
select $case1 , $case2 , $case3 , $case4, $case5 , $case6 , $case7 etc..
si une des case n'est pas coché, il n y aura pas de valeur transmise et mon select ne marchera pas.
voila j'espere avoir été plus clair.
merci d'avoir repondu.
hm si je n'ai pas poster de code source c'est que je n'en ai pas encore:) j'essai d l'imaginer avant.
Bref je vais essayer d'etre plus clair.
J''ai un simple formulaire avec des case a cocher. il peut donc y avoir plusieurs cases de cocher , je transmet ces valeurs par GET ou POST et j'interroge ma base de donnée en utilisant ces variable dans le select.
Si c'etait un bouton de type radio , il y aurait une seul variable et cela ne poserait pas de probleme.
Mais moi je veux interrogé ma base de donnée en fonction des cases qui ont été coché.
Mon probleme est que dans mon select , je ne peux pas mettre toutes les variable puisque si une case n'est pas coché, la variable transmise sera nul et mon select ne marchera pas.
je simplifie :
voici mon formulaire
case1 case 2 case3 case4 case5 case6 case7
coché oui non oui non non oui oui
je veux donc effectuer ma requeteen utilisant simplement les case qui ont été coché mais puisque je ne peux pas savoir a l avance quel case vont etre coché comment puis je faire?
select $case1 , $case2 , $case3 , $case4, $case5 , $case6 , $case7 etc..
si une des case n'est pas coché, il n y aura pas de valeur transmise et mon select ne marchera pas.
voila j'espere avoir été plus clair.
Ambobo
Messages postés
28
Date d'inscription
dimanche 26 août 2007
Statut
Membre
Dernière intervention
8 mars 2009
49
27 août 2007 à 14:13
27 août 2007 à 14:13
Il y a la solution d'utiliser des conditions, cependant si le nombre de cases à cocher est élevé cela devient dificile et rébarbatif. Il s'agit en fait de contrôler l'état de tes cases à cocher avec un bloc IF et modifier la requète SELECT en conséquence.
EX :
mysql_query("SELECT FROM 'MaBaseDeDonnée' WHERE ".$stringCondition."); ...etc
En fait tu peux créer la "$stringCondition" dans les blocs IF que tu aura définis auparavent, par exemple :
if ($_POST[$case1] == 1){
$stringCondition .= "case1 = true AND "; // on ajoute la condition dans la chaine "stringCondition
}
if ($_POST[$case2] == 1){
$stringCondition .= "case2= true AND ";
}
if ($_POST[$case2] == 1){
$stringCondition .= "case3 = true AND ";
}
if ($_POST[$case2] == 1){
$stringCondition .= "case4 = true AND ";
}
Ainsi si une case n'est pas cochée, la condition n'apparaîtra pas dans la requète et donc celle marchera sans problème.
En espèrant que cela ai pu t'aider dans tes recherches.
Ambobo
EX :
mysql_query("SELECT FROM 'MaBaseDeDonnée' WHERE ".$stringCondition."); ...etc
En fait tu peux créer la "$stringCondition" dans les blocs IF que tu aura définis auparavent, par exemple :
if ($_POST[$case1] == 1){
$stringCondition .= "case1 = true AND "; // on ajoute la condition dans la chaine "stringCondition
}
if ($_POST[$case2] == 1){
$stringCondition .= "case2= true AND ";
}
if ($_POST[$case2] == 1){
$stringCondition .= "case3 = true AND ";
}
if ($_POST[$case2] == 1){
$stringCondition .= "case4 = true AND ";
}
Ainsi si une case n'est pas cochée, la condition n'apparaîtra pas dans la requète et donc celle marchera sans problème.
En espèrant que cela ai pu t'aider dans tes recherches.
Ambobo
aveuglemspas_sourd
Messages postés
286
Date d'inscription
mercredi 23 mai 2007
Statut
Membre
Dernière intervention
12 octobre 2009
20
27 août 2007 à 16:54
27 août 2007 à 16:54
ouai je vais essayer ça.
Merci d'avoir pris le temps de me repondre.
Merci d'avoir pris le temps de me repondre.