Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP+MySQL] Wyświetlanie 'gorących' tematów z listy
Forum PHP.pl > Forum > Bazy danych > MySQL
pc5
Witam,
Chciałbym na swojej stronie wyświetlać powiedzmy 10 najczęściej komentowanych artykułów, ale nie typu lista 'sztywna' wyświetlania od max komentarzy, ale lista zależna od czasu. Zastanawiam się jak do tego się zabrać.

Mój pierwszy pomysł jest taki - za każdy nowy komentarz artykuł zyskuje powiedzmy +X punktów popularności, jednocześnie wszystkie inne artykuły otrzymują -Y, przy czym X > Y i parametry X,Y zależne są od czasu, jeżeli artykuł jest 'stary' odejmowane jest trochę więcej punktów popularności. W praktyce miałoby to promować świeże artykuły, gdzie dodano dużo komentarzy i pozwalało na wyprzedzenie starszego artykuł z 30 komentarzami przez świeży z powiedzmy 10 komentarzami dodanymi w niedługim czasie po publikacji.

Macie jakieś inne pomysły, doświadczenia w tym temacie?
Pozdrawiam
Wicepsik
A nie możesz mieć jednego pola czyli date ostatniego posta. I wyświetlasz tematy np. z największą ilością odpowiedzi w ostatnim tygodniu.
pc5
Cytat(Wicepsik @ 8.08.2009, 14:35:03 ) *
A nie możesz mieć jednego pola czyli date ostatniego posta. I wyświetlasz tematy np. z największą ilością odpowiedzi w ostatnim tygodniu.


To jedno z rozwiązań. Na chwilę obecną najprostsze i nie trzeba wykonywać dodatkowych 'odejmowań punktów' od wszytkich artykułów w bazie.

Niestety to rozwiązanie ma wadę. Wystarczy, że doda się nowy komentarz do starego wątku z dużą ilością komentarzy, aby znów był on na liście przez kolejny tydzień. Wtedy taki artykuł z powiedzmy 60 komentarzami wyprzedza 9 innych, które mają po 20 komentarzy, ale często dopisywane są do nich następne. No chyba, że coś mieszam.

Może coś innego jeszcze?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.