•  » Utilisation
  •  » Ordre d'affichage des commentaires

#1 2005-05-11 00:26:22

ramunt
Membre
2005-05-11
51

Ordre d'affichage des commentaires

Ce qui semble le plus plaire à mes visiteurs ce sont les derniers commentaires laissés.

Pour cela le lien "Sommaire/Commentaires" n'est pas tout à fait approprié.
en effet il affiche les photos dans l'ordre de "image_id" (voir plus bas en ref1)
et au sein de chaque photo dans l'ordre décroissant de "date" (voir plus bas en ref2)

Alors que j'aurai préferré que l'ordre des photos soit en fonction des dates des derniers commentaires

Pour cela j'ai donc modifié le tri de la requête de commentaire (voir plus bas en ref3)

C'est déjà mieux, mais pas idéal :
Quand une photo à plusieurs commentaires c'est malheureusement le plus ancien qui est alors pris en compte pour le tri final d'affichage .... donc la photo qui a reçus le tout premier commentaire ce retrouve à la fin...

Donc l'objectif final est un ordonnancement des photos en fonction de la date du dernier commentaire laissé.

Quelqu'un aurait il une piste ?
merci d'avance

------------------------------------------------------------------------------------------------------------------
(ref1) fichier : comments.php
section  // +-----------------------------------------------------------------------+
            // |                        last comments display                          |
            // +-----------------------------------------------------------------------+
en ligne 134 :
            ORDER BY ic.image_id DESC
------------------------------------------------------------------------------------------------------------------
(ref2) fichier : comments.php
section   // for each picture, retrieving all comments
en ligne 194
             ORDER BY date DESC
------------------------------------------------------------------------------------------------------------------
(ref3) fichier : comments.php
section  // +-----------------------------------------------------------------------+
            // |                        last comments display                          |
            // +-----------------------------------------------------------------------+
en ligne 134 :
            ORDER BY date DESC
------------------------------------------------------------------------------------------------------------------

Hors ligne

#2 2005-05-11 00:31:21

ramunt
Membre
2005-05-11
51

Re: Ordre d'affichage des commentaires

J'oubliai la version : 1.4

Hors ligne

#3 2005-05-16 10:37:35

scapin
Membre
2005-05-14
6

Re: Ordre d'affichage des commentaires

Je me pose le même problème que toi ...

Peut etre en rajoutant le champ c.date dans le select et en modifiant la clause order by en conséquence mais je débute en sql et j'ai pas envie de risquer ça sur ma galerie ; )


comment.php


$query = '
SELECT DISTINCT(ic.image_id) AS image_id,ic.category_id, uppercats, c.date
  FROM '.COMMENTS_TABLE.' AS c, '.IMAGE_CATEGORY_TABLE.' AS ic
    , '.CATEGORIES_TABLE.' AS cat
  WHERE c.image_id = ic.image_id
    AND ic.category_id = cat.id
    AND date >= \''.$maxdate.'\'';

puis 


$query.= '
    ORDER BY c.date DESC

Hors ligne

#4 2005-05-16 23:37:04

ramunt
Membre
2005-05-11
51

Re: Ordre d'affichage des commentaires

Le rajout d'une colonne date ne changera rien. De plus elle ne serait traitée à aucun moment.

En fait les groupes sont déjà fait par le GROUP BY ic.image_id,  (mais aussi distinct (ic.image_id) qui enlève les doublons, ce qui me semble faire être une juste une sécurité en trop)

En mettant directement cette requête dans phpMyAdmin

SELECT DISTINCT (ic.image_id) AS image_id, ic.category_id, uppercats
FROM phpwebgallery_comments AS c, phpwebgallery_image_category AS ic, phpwebgallery_categories AS cat
WHERE c.image_id = ic.image_id
AND ic.category_id = cat.id
GROUP BY ic.image_id
ORDER BY date DESC

On se rend compte que les images ayant des commentaires n'apparaissent qu'une seule fois ... car elle sont REGROUPEES, cette requête sert donc d'abord à repérer les images ayant des commentaires, la recherche des commentaires se faisant après ...

On remarque aussi que le mauvais classement est déjà fait, càd les images ayant les plus anciens commentaires sont déjà à la fin, même si elles ont des commentaires plus récents ....

En fait la commande GROUP BY ne permet de garder qu'un seul champ date, même en utilisant les fonctions d'agrégation max() ou min() sur le champ date, c'est toujours la premiere date rencontree qui est utilisee ...

la je seche ....

Hors ligne

#5 2005-05-16 23:48:22

ramunt
Membre
2005-05-11
51

Re: Ordre d'affichage des commentaires

En fait il y a une solution temporaire mais pas maintenable
on peut toujours faire une operation d ordonnancement sur le champ date de cette table dans phpmyadmin ....
mais ce n est absolument pas satisfaisant ...

Hors ligne

#6 2005-05-17 00:24:39

ramunt
Membre
2005-05-11
51

Re: Ordre d'affichage des commentaires

Ca y est the solution : en fait tu n'étais pas loin : le rajout d'un champ date en résultat de requête peut permettre d'y faire un tri

Actions :

remplacer le
SELECT DISTINCT(ic.image_id) AS image_id,ic.category_id, uppercats
par
SELECT DISTINCT(ic.image_id) AS image_id,ic.category_id, uppercats, max(c.date) as datetemp

puis remplacer
ORDER BY ic.image_id DESC
par
ORDER BY datetemp DESC

Et voilà le tour est joué !!!!
Ce n'est certainement pas ce qu'il y a de plus propre mais ca marche !!!

Hors ligne

#7 2005-05-17 00:26:31

plg
Équipe Piwigo
Nantes, France, Europe
2002-04-05
12672

Re: Ordre d'affichage des commentaires

suggestions...

Code:

SELECT image_id, MAX(date)
  FROM ...
  GROUP BY image_id
  ORDER BY MAX(date) DESC
  HAVING MAX(date) > date_seuil
;

(pas testé)

Pour chaque image ayant un commentaire récent, tu connais la date du dernier commentaire et les image_id sont retournés dans le bon ordre (si j'ai bien compris ce que tu voulais).

Cela dit, vu que tu indiques que tu as testé les fonctions d'agrégation... je ne suis pas sûr d'aider beaucoup.


Les historiens ont établi que Pierrick était le premier utilisateur connu de Piwigo.

Hors ligne

#8 2005-05-17 00:33:54

ramunt
Membre
2005-05-11
51

Re: Ordre d'affichage des commentaires

Hé oui j'ai posté la solution 2 minutes plus tôt ;-)
mais il y a certainement une solution plus propre dans ton idée.
Enfin pour ce soir j'en reste là.
à+

Hors ligne

#9 2005-05-22 22:01:13

sylvain
Membre
2005-02-18
44

Re: Ordre d'affichage des commentaires

ramunt a écrit:

Ca y est the solution : en fait tu n'étais pas loin : le rajout d'un champ date en résultat de requête peut permettre d'y faire un tri

Actions :

remplacer le
SELECT DISTINCT(ic.image_id) AS image_id,ic.category_id, uppercats
par
SELECT DISTINCT(ic.image_id) AS image_id,ic.category_id, uppercats, max(c.date) as datetemp

puis remplacer
ORDER BY ic.image_id DESC
par
ORDER BY datetemp DESC

Et voilà le tour est joué !!!!
Ce n'est certainement pas ce qu'il y a de plus propre mais ca marche !!!

Des mois de recherche et enfin la solution :)
Soit grandement remercié ! :)

Si pour toi ce n'est pas satisfaisant ca l'est totalemetn pour moi !

REste plus qu'a attendre une refonte de ce systeme dans la 1.5 que Pierrick a Annoncé sur Mantis ! Bon courage Pierrick ! Et merci a toi ramunt pour la solution

Hors ligne

#10 2005-05-22 22:59:58

plg
Équipe Piwigo
Nantes, France, Europe
2002-04-05
12672

Re: Ordre d'affichage des commentaires

sylvain a écrit:

Reste plus qu'a attendre une refonte de ce systeme dans la 1.5 que Pierrick a Annoncé sur Mantis ! Bon courage Pierrick ! Et merci a toi ramunt pour la solution

Voilà, topic lancé : [discussion] branche 1.5, commentaires utilisateur.


Les historiens ont établi que Pierrick était le premier utilisateur connu de Piwigo.

Hors ligne

#11 2005-07-19 09:48:41

MDouze
Invité

Re: Ordre d'affichage des commentaires

Dans le même souci de présentation des commentaires, je voulais que les commentaires pour une images soient présenté du plus vieux au plus récent.

ver 1.4.1 !

remplacer
ligne 192 :   ORDER BY date DESC
par
ligne 192 :   ORDER BY date ASC


Par contre, lorsque l'on laisse un commentaire sur une image qui fait partie d'une catégorie virtuelle c'est le nom du repertoire de stockage qui est indiqué.
La table COMMENTAIRE n'enregistre pas la référence à la catégorie lorsque l'on laisse un commentaire.

Pour une image faisant partie de plusieurs catégories, je suis persuadé que l'on ne trouvera qu'un seul fil de commentaires.

#12 2005-07-26 11:23:10

-caledonien.org
Invité

Re: Ordre d'affichage des commentaires

Hey excellent :)

Merci pour l'info, c'est vrais que c'est quand meme plus sympa affiché de la sorte.

#13 2009-07-15 19:02:43

Gotcha
Ex Equipe Piwigo
Pierrelatte (26)
2007-03-14
13331

Re: Ordre d'affichage des commentaires

Permettez moi de faire un petit...

http://www.gifs.net/Animation11/Transportation/Heavy_Machinery/Buldozer.gif
Déterrage.

Est-il possible de voir cette solution intégrée à Piwigo via un panneau d'administration par exemple ?


Ayez comme premier réflexe de consulter le wiki.
Ensuite, veuillez effectuer une recherche sur le forum avant de poser votre question.

LE FAIRE EST LE REVELATEUR DE L'ETRE

Hors ligne

#14 2009-08-11 22:59:04

Gotcha
Ex Equipe Piwigo
Pierrelatte (26)
2007-03-14
13331

Re: Ordre d'affichage des commentaires

Il faut que j'ouvre une demande d'évolution peux-être pour pouvoir afficher l'ordre des commentaires à notre convenance ?


Ayez comme premier réflexe de consulter le wiki.
Ensuite, veuillez effectuer une recherche sur le forum avant de poser votre question.

LE FAIRE EST LE REVELATEUR DE L'ETRE

Hors ligne

#15 2009-08-12 08:06:47

ddtddt
Équipe Piwigo
Quetigny (21) - France
2007-07-27
16915

Re: Ordre d'affichage des commentaires

Gotcha a écrit:

Il faut que j'ouvre une demande d'évolution peux-être pour pouvoir afficher l'ordre des commentaires à notre convenance ?

Je te propose d'ouvrir une nouvelle discussion en redonnant l'existant (le fonctionnement d'aujourd'hui sur la page concerné) et l'évolution que tu souhaiterais.

Cela permettra d'échanger sur le sujet.

Je ne pense pas que la page commentaire, fonctionne encore comme décrit dans ce post ;-)


Vous aimez Piwigo alors n'hésitez pas à participer avec nous, plus d'infos sur la page "Contribuer à Piwigo". Si vous n'avez pas beaucoup de temps et que vous souhaitez nous soutenir vous pouvez aussi le faire par un don.

Hors ligne

  •  » Utilisation
  •  » Ordre d'affichage des commentaires

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2024 · Contact