Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Ranking użytkowników
devbazy
post
Post #1





Grupa: Zarejestrowani
Postów: 93
Pomógł: 4
Dołączył: 10.08.2009

Ostrzeżenie: (0%)
-----


Witam,

przejdę od razu do meritum. Otóż planuję napisać skrypt (jak w tytule wątku) i zastanawiam się nad pewną kwestią. Załóżmy, że algorytm obliczałby ilość zdobytych plusów za komentarze, posty napisane przez użytkownika oraz jego aktywność (podobne działanie jak na portalu wykop.pl) i według tego ustalałby jego pozycję w rankingu (nie mam zamiaru robić tego dynamicznie, czyli po każdej aktywności odpalać odpowiedni skrypt - wręcz przeciwnie, posłużę się CRON'em, bo myślę, że to najlepsza rozwiązanie, chociaż jestem otwarty na wszelkie sugestie). Na samym początku, po rejestracji na witrynie użytkownik miałby status - poza rankingiem (o ile na stronie byłoby zarejestrowanych więcej niż 300 użytkowników, dajmy na to, że limit to właśnie te 300 miejsc), a dopiero z czasem (w miarę jego aktywności) mógłby zdobyć jakąś sensowną pozycję. Będę wdzięczny za jakiekolwiek propozycje, począwszy od wstępnego projektu struktury tabel, aż po sugestie dot. rozwiązania tego dość irytującego problemu.

Z góry dziękuje za wszelaką pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
PiotrekM
post
Post #2





Grupa: Zarejestrowani
Postów: 130
Pomógł: 6
Dołączył: 20.12.2009

Ostrzeżenie: (0%)
-----


normalna tabela z użytkownikami

zapytaniem zliczasz posty, tematy etc.

tworzysz sobie tablice wg. takiego schematu
Kod
$rate = array(
'post' => 5,
'thread' => 15,
);

wymnażasz.
w zapytaniu dajesz limit do 300 i wyświetlasz userów w rankingu.
cronem aktualizujesz raz na 24 godziny.

zawsze możesz dać klauzue where i sprawdzać czy użytkownik jest w serwisie przynajmniej tydzień, czy ile tam chcesz (IMG:style_emoticons/default/smile.gif)

Ten post edytował PiotrekM 21.02.2011, 18:46:20
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.12.2025 - 00:32