Comment configurer un système où les utilisateurs peuvent trier les résultats ou les listes par prix, distance, pertinence, etc ...? Comme sur YouTube où vous pouvez trier par vues, la pertinence ou d'autres options.listes de tri, résultats de recherche, etc
Répondre
1) Si 100% des résultats sont affichés sur la même page, vous pouvez le faire dans le code côté client (HTML + JavaScript). Il y a plusieurs moyens de le faire. Votre question est trop large, donc le meilleur conseil que je peux vous donner sur cette approche est Google "table triable html" et/ou "table triable javascript". L'approche la plus courante consiste à stocker les données de table dans une structure de données (par exemple une matrice JSON), une routine de tri JS pour produire une matrice re-triée; et avoir un sous-programme JS qui remplit le contenu des cellules du tableau avec le contenu du tableau re-trié. Le tableau JSON d'origine est imprimé dans la page par le script PHP backend.
Il existe des scripts/bibliothèques JS pour cela, à la fois pour JS pur, ainsi que pour YUI et jQuery.
2) Dans le cas contraire, vous pouvez le faire sur le back-end, et re-tri présente une demande avec « ce qu'il faut trier par » paramètre, avec le résultat HTML contenant déjà des données de table qui a été pré-trié dans votre script PHP (ou même la requête de la base de données avant que le script PHP ait obtenu les données). L'algorithme est (non écrit en PHP :)
order_by = get_CGI_parameter("order_by");
data_array = retrieve_data(order_by);
execute_view_code(data_array);
ou
data_array = retrieve_data();
sorted_data_array = sort_data(data_array, order_by);
execute_view_code(sorted_data_array);
Ensuite, votre table HTML sur les en-têtes qui sont des liens sous forme de
<A HREF="/your/cgi/script.php?order_by=column_name1">column_name1</A>
Vous auriez un tableau des résultats avec un lien en haut de chaque colonne (ou ailleurs). Le lien serait un vers la page où vous vous trouvez avec une variable $_GET
ajoutée à l'URL. Cette variable pourrait être utilisée dans une requête SELECT
qui utiliserait l'option ORDER BY
dans SQL pour trier les données avant que vous ne les reproduisiez à nouveau.
- 1. Tri de certains résultats
- 2. Listes de recherche, plages
- 3. Tri des résultats de recherche tableau par nombre de correspondances?
- 4. Actions sur une collection (tri, limitation, recherche, etc.)
- 5. Les résultats du tri (méthode de recherche) ne fonctionnent pas
- 6. Tri des résultats de
- 7. requête linq pour les listes de recherche
- 8. Recherche de listes Python
- 9. Tableau de résultats de tri
- 10. Recherche Python dans les listes de listes
- 11. Tri de listes de sélection personnalisées
- 12. Tri des résultats de la requête NHibernate
- 13. Listes Sharepoint.GetListItems tri
- 14. Tri des résultats de Topscorecollector dans Lucene.net?
- 15. Priorité de tri dans les résultats SQL
- 16. Recherche récursive de listes imbriquées
- 17. Tri des résultats MySQL dans un ensemble de résultats
- 18. mongodb résultats de recherche
- 19. résultats de recherche
- 20. "Réorganiser" Résultats de la recherche
- 21. Tri des résultats de MySQL en PHP ...?
- 22. Interprétation des résultats de recherche
- 23. nombre de résultats de recherche Google
- 24. Trop de résultats de recherche
- 25. Résultats de recherche de pagination
- 26. Recherche d'un plusieurs résultats
- 27. Pertinence de Lucene résultats de recherche
- 28. XML XQuery résultats de recherche de base
- 29. Scala et JPA les listes de résultats
- 30. tri MongoDB Résultats
Pourriez-vous être plus précis sur la partie d'un tel système qui vous intéresse? Sinon, votre question est assez générique. Merci. – polarblau
j'utilise le plugin jquery tablesorter, moi-même http://tablesorter.com/docs/ –