Vous n'êtes pas identifié(e).
Pages :: 1
Bonjour,
Voila mon soucis, j'ai a faire une recherche complexe de mes fiches.
Pour ce faire, j'ai un formulaire :
2 critères principaux (creitere1 et critere2) pour lesquelles 3 types sont possible (statuts, nom ou processus)
Pour chaque types, il est possible de donner 3 valeurs, chacune pouvant être = ou != au type.
j'ai donc un peut de mal a jongler avec les OR, AND et les parenthèses :s.
voici le script de génération des conditions qui complète le select qui lui est toujours le même :
Les trois fonctions conditionsXXX, servent juste a concaténer le = ou le != avant d'ajouter la valeur.
Le soucis c'est que lorsque par exemple, mon premier critère est "statuts", que je lui demande tout les statuts donc = a 2 et tout les statuts != de 10, a l'affichage, je n'ai que les statuts = a 2 qui s'affiche.
auriez vous une idée ? comment gérer autrement les ET/OU et les parenthèses.
J'ai toujours raison ! Sauf quand j'ai tort, et même quand j'ai tort, j'ai raison, parce que je sais que j'ai tort !
Hors ligne
Saluton,
Peux-tu nous expliciter simplement, avec quelques exemples concrets, l'algorithme de ton usine à gaz.
Car même avec la colorisation du code, je n'arrive pas à suivre ton cheminement de pensée.
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
voila déjà un screen du formulaire :
Mon script test chaque valeurs pouvant être renvoyés :
les $_POST['pXX'] correspondent au chant de recherche par processus
les $_POST['nXX'] correspondent au chant de recherche par nom
les $_POST['sXX'] correspondent au chant de recherche par statuts
et pour chaque valeur concatène l'opérateur avec la valeur ainsi :
[code = php]
if ($_POST['sa2'] != "default" && $_POST['sa2'] != ""){
$cond = $cond.conditionsStatuts($_POST['sa1'],$_POST['sa2'],$appli);
}
[/code]
si le champs (ici le premier statut) est saisie, alors j'ajoute a mes conditions mon opérateur et ma valeur saisie (les fonction conditionsXXX se chargent de concaténer les 2 )
(pour les cas ou il y a une distinction entre OR et AND, c'est parce que lorsque la personne choisira "différent de" dans plusieurs champs il faut mettre OR pour avoir tout les cas correspondant) et c'est la que je suis un peu coincés, ou je ne vois plus trop clair
c'est plus claire maintenant ?
J'ai toujours raison ! Sauf quand j'ai tort, et même quand j'ai tort, j'ai raison, parce que je sais que j'ai tort !
Hors ligne
Serait-ce abusé que te demander le code html de cette partie du formulaire afin que je puisse m'y retrouver en tre les identifiants des zones de saisie et les index de $_POST.
Merci (promis après j'essaye de te démêler le bouzin)
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
pas de problème, c'est moi qui n'est pas non plus trés réactif je dois dire ^^
</form>
voila pour la partie "html"
et voila pour le renvoi ajax (qui renvois dans les deux SPAN de la partie HTML) :
Dernière modification par Bibi (10-06-2009 13:17:06)
J'ai toujours raison ! Sauf quand j'ai tort, et même quand j'ai tort, j'ai raison, parce que je sais que j'ai tort !
Hors ligne
Ah le piège ! il m'avait caché sa petite couche d'AJAX.
Bon donc, si j'ai bien compris, l'AJAX sert à modifier l'aspect du formulaire en fonction des items choisis en premier ou second critère.
Je vais essayer de regarder tout cela ce soir à tête reposée.
Un truc en passant au sujet de la mise en page par tableaux html.
Tu peux aussi prendre connaissance de la technique de mise en page des formulaires de Fred Cavazza.
Et, tant que j'y suis : http://openweb.eu.org/articles/validation_avancee
Gxis
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
merci pour ton aide.
effectivement, il y a de l'ajax ^^.
et merci pour tes liens, je sais que l'affichage par tableau c'est moche, mais je dois faire au plus simple, l'application doit être optimisée pour IE6...
les autres sont de bons conseils aussi, je vais me les garder sous le coudes ^^
J'ai toujours raison ! Sauf quand j'ai tort, et même quand j'ai tort, j'ai raison, parce que je sais que j'ai tort !
Hors ligne
je sais que l'affichage par tableau c'est moche
Ce n'est pas le propos, la beauté, comme disait ma défunte mère, ça ne se mange pas en salade.
Il s'agit bien ici de tenter de s'abstenir du recours aux tableau html uniquement pour faire de la mise en page.
Les tableaux doivent, sémantiquement et structurellement, conserver leur rôle et leur place dans des pages html pour présenter des listes à colonnes qu'on appelle précisément des tableaux.
Mais les détourner de leur finalité pour faire de la mise en page (et souvent surtout par flemme de passer aux feuilles de style CSS) c'est coupable; pour les raisons évoquées dans le premier lien que je t'ai fourni.
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Désolé, il me manque encore quelque chose : le script de
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
affiche_option rempli les options des select a partir de la base ^^
et du coup le code de recup_listbox :
J'ai toujours raison ! Sauf quand j'ai tort, et même quand j'ai tort, j'ai raison, parce que je sais que j'ai tort !
Hors ligne
Est-ce que l'internaute peut choisir la même option dans $_POST['critere1'] et $_POST['critere2'] ? (même si ce ne serait pas logique)
Et est-ce que ces options peuvent être toutes les deux 'default' ? (ce qui correspondrait à un non-choix, de fait)
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Est-ce que l'internaute peut choisir la même option dans $_POST['critere1'] et $_POST['critere2'] ? (même si ce ne serait pas logique)
Et est-ce que ces options peuvent être toutes les deux 'default' ? (ce qui correspondrait à un non-choix, de fait)
il peut oui choisir le même critère (et ainsi avoir 6 possibilité de valeur)
il doit faire au moins un choix oui (le second pouvant rester sur default, si le premier en est différent)
J'ai toujours raison ! Sauf quand j'ai tort, et même quand j'ai tort, j'ai raison, parce que je sais que j'ai tort !
Hors ligne
On est bien d'accord, au chargement du formulaire, seuls les deux <select>s critere1 et critere2, tous les deux positionnés sur «Choisissez...», existent ?
C'est AJAX qui, en fonction de l'option choisie dans critere1 et/ou critere2, va faire apparaître les {sa1-sa2,sb1-sb2,sc1-sc2} ou {pa1-pa2,pb1-pb2,pc1-pc2} ou {na1,nb1,nc1} pour critere1 et les {sd1-sd2,se1-se2,sf1-sf2} ou {pd1-pd2,pe1-pe2,pf1-pf2} ou {nd1,ne1,nf1} pour critere 2 ?
Mais rien n'empêche de valider le formulaire sans rien avoir choisi (je sais ce serait stupide, mais ça n'en n'est pas moins possible) non ?
En conclusion provisoire je dirais que je m'oriente vers l'approche suivante
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Bon j'ai une bonne et une mauvaise nouvelle...
La bonne c'est que je te suis vraiment reconnaissant pour ton aide (ca vaut ce que ca vaut comme reconnaissance, mais bon XD)
La mauvaise, c'est que la réunion de ce matin...a donner lieux a une modification du formulaire...avec simplement 3 lignes...donc bcp plus simple a gérer pour moi...et que du coup, on s'est cassés la tête pour rien...
J'ai toujours raison ! Sauf quand j'ai tort, et même quand j'ai tort, j'ai raison, parce que je sais que j'ai tort !
Hors ligne
du coup, on s'est cassés la tête pour rien...
Détrompe-toi, toute réflexion, intègre un caractère préventif contre les attaques alzheimériennes toujours à craindre à mon grand âge.:rolleyes:
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Bon ben si c'est comme ça, je clicouille le topic comme résolu
MERCI de lire le mode d'emploi avant de poster !!
Hors ligne
Va donc relire ma prose au lieu de glander, ma [cli]scrotumouille !
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Pages :: 1