Tri d'article dans un formulaire [Résolu]

jp15 - 12 juin 2014 à 22:48 - Dernière réponse :  jp15
- 14 juin 2014 à 21:34
Bonjour à tous,

J'aurais besoin de vos services pour m'aider à réaliser un petit script svp.

1- Je souhaite afficher plusieurs lignes extraites de MYSQL via PHP.
2- J'affiche ces lignes (disons, que la base renvoie 10 articles )
3- Je souhaite trier ces 10 articles en affectant par exemple, un nombre de 1 à 10 unique me permettant de définir un classement de ces articles.

Pourriez-vous m'indiquer une méthode de travail voire un script pour me servir d'exemple ?

--------------

liste saisie sans doublon
a 2
b 1
c 3
d 4
e 10
f 8
g 9
H 5
i 7
j 6

--------------

Merci beaucoup.
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
jordane45 21424 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 19 juin 2018 Dernière intervention - 14 juin 2014 à 03:54
1
Merci
Bonsoir,

permettre d'afficher dans des liste-box dynamiques (1 liste par ligne de contact) par exemple, ces priorités et que lorsque l'utilisateur sélectionne une priorité (par exemple 3), toutes les autres listes box de la page éliminent 3 dans leur choix.

Oui en effet.

Il faut que tu regardes la méthode change (à mettre sur tes liste => les SELECT )
http://www.w3schools.com/jsref/event_onchange.asp

<input type="text" onchange="changePriority(this.value)">


Et bien entendu..il te faut écrire le script javascript qui va changer les prios :
function changePriority(elmValue){

// ici  Ton code....


}


lorsque l'utilisateur sélectionne une priorité (par exemple 3), toutes les autres listes box de la page éliminent 3 dans leur choix...
Par contre... dis toi que si tu retires les prio choisies de tes différentes listes....une fois toutes tes listes remplis.. tu ne pourras plus les changer... vu que tu auras retiré les autre choix ......

A la limite... il faut juste que tu remetes à vide celle qui a (avait) la même valeur que celle que tu viens de séléctionner (ou encore mieux... tu lui donnes la première valeur non utilisée par les autres )


Autre possibilité encore (mais un peu plus compliqué si tu n'y connais pas grand chose...) L'utilisation de plugin Jquery qui permettent de changer l'ordre dans une liste via du drag en drop...

Exemples :
http://www.wakdev.com/wiki/javascript-actionscript-vbscript/68-tri-drag-and-drop-dans-une-liste-dynamique.html

http://jqueryui.com/sortable/




Ai-je été plus clair dans ma demande ?
Je vous remercie beaucoup de votre aide.
Oui c'est bien plus clair maintenant.

Par contre... penses que nous ne ferons pas le code à ta place...
Il va te falloir donc coder.
ET SI tu rencontres des difficultés, venir poster des messages sur le forum pour que l'on puisse t'aider.

N'hésites pas à faire un tour sur ce lien afin de comprendre comment poser tes questions sur le forum :
http://codes-sources.commentcamarche.net/contents/11-charte-de-commentcamarche-net-conseils-d-ecriture

Et celui ci :
http://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

.

Merci jordane45 1

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 125 internautes ce mois-ci

Commenter la réponse de jordane45
Meilleure réponse
1
Merci
Bonsoir,

Merci beaucoup, c'est parfait toute cette documentation et ces conseils.

Bien entendu, je n'attends pas un code tout fait de votre part, car cela perdrait l'attrait de programmer...

Encore merci !

Merci jp15 1

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 125 internautes ce mois-ci

Commenter la réponse de jp15
jordane45 21424 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 19 juin 2018 Dernière intervention - 12 juin 2014 à 23:36
0
Merci
Bonjour,

Tu nous parles de PHP ... et tu postes dans la section Javascript;.... une raison particulière ?


Sinon... pourquoi..lorsque tu affiches le résultat de ta requête tu ne leur affectes pas directement un numéro ( il te suffit d'incrémenter une variable $i par exemple dans la boucle de traitement de ta requête...)

Et sinon... dans ta BDD .. n'as tu pas un ID ( in id auto incrémenté déclaré en Primary Key) pour ces éléments ? Il est forcément unique.....et tu peux l'obtenir dans ta requête directement... et dans ce cas;.. pas besoin de script supplémentaire.


En tout cas... si mes réponses ne te suffisent pas, merci de reformuler plus en détail ta question car pour l'instant on n'a pa suffisement d'informations.
Commenter la réponse de jordane45
0
Merci
Bonjour et merci de m'avoir répondu,

Oui, je comprends qu'il manque effectivement des détails, désolé.

Je poste dans Javascript car la récupération de ma base MYSQL via PHP ne me pose pas de pb, ni la réinsertion dans la base. J'ai effectivement besoin de Javascript car il s'agit là d'automatiser mon formulaire sur le client pour aider la saisie de cette donnée.

Que veux-je ? : j'ai une liste de contacts (nom, prénom téléphone) de plusieurs interlocuteurs qui sont en bdd. Je souhaite que l'utilisateur puisse classer ces contacts en affectant des priorités d'appels. Par exemple, le contact C serait appelé en 1er, le contact A en second, le contact N en n ième appel...

Après la saisie, ces données saisies (priorités) sont récupérées et insérées dans ma base. L'utilisateur peut décider de modifier ce classement en réaffichant la liste des noms et changer ce classement (priorités).

Il me semble que seul Javascript peut me permettre d'afficher dans des liste-box dynamiques (1 liste par ligne de contact) par exemple, ces priorités et que lorsque l'utilisateur sélectionne une priorité (par exemple 3), toutes les autres listes box de la page éliminent 3 dans leur choix...

J'ai également la possibilité de mettre un INPUT pour chaque ligne, mais il faut qu'au moment de la validation, mon formulaire soit passé au peigne fin pour vérifier que les champs "priorité" ne contiennent ni de doublons, ni de trous.

Ai-je été plus clair dans ma demande ?

Je vous remercie beaucoup de votre aide.
Commenter la réponse de jp15

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.