Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Ranking użytkowników a punkty
lukaszskowronski
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 29.09.2011
Skąd: Poznań

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


Witam.

Jestem w trakcie pisania większego projektu, ale stoję w jednym miejscu i nie mogę sobie z jednym poradzić. Otóż mam tabelę z użytkownikami. Tabela MySQL zawiera klucz do tabeli z kategoriami użytkowników. Po wejściu w serwisie w spis userów, można wybrać kategorię i na tej podstawie są pobierane wyniki z bazy danych z użytkownikami. Każdy z nich zbiera na swoim koncie punkty, które są zapisywane w tabeli z użytkownikami w osobnej kolumnie rekordu z danymi użytkownika. Na tej podstawie pobrane rekordy są sortowane metodą Z-A.

Mój problem jest następujący. Jak obliczyć dla każdego użytkownika prowizję? Chodzi o to, że ma być ona generowana dynamicznie. Użytkownik, który jest na samym szczycie listy (1 miejsce) musi mieć najmniejszą wartość prowizji, zaś ostatni w rankingu największą. Prowizja ma być wyrażana w %, więc w grę wchodzą jedynie wartości 0,xx. Max wartość nie może przekraczać 50% wartości zamówienia.

Proszę o pomoc, jest to dla mnie naprawdę ważne, ponieważ bez tego nie jestem w stanie ukończyć projektu, a skorzystać na tym może każdy.. (IMG:style_emoticons/default/wink.gif) Szczegóły wkrótce!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
lukaskolista
post
Post #2





Grupa: Zarejestrowani
Postów: 872
Pomógł: 94
Dołączył: 31.03.2010

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


Najprosciej bedzie opracowac odpowiedni algorytm (IMG:style_emoticons/default/smile.gif)
Moja propozycja:
  1. $min_prowizja = 10; // Wartosc w %
  2. $max_prowizja = 50; // Wartosc w %
  3.  
  4. $ilosc_uzytkownikow = mysql_query("SELECT COOUNT(1) FROM users"); // Zapytanie bedzie szybkie poniewaz MySQL pamieta ilosc rekordow w tabeli i nie bedzie jej liczyl za kazdym razem
  5. $ilosc_uzytkownikow = mysql_fetch_object($ilosc_uzytkownikow);
  6.  
  7. $wspolczynnik = ($max_prowizja - $min_prowizja) / $ilosc_uzytkownikow;
  8.  
  9. $miejsce_ranking = 40; // Miejsce uzytkownika w rankingu - nalezy wyliczyc albo liczyc w petli
  10.  
  11. $prowizja = $miejsce_ranking * $wspolczynnik; // Wartosc prowizji w %
Swoja droga piszesz duzy serwis a nie potrafisz czegos takiego wymyslec?

Edit:
Oczywiscie rozklad prowizji jest rowny i zalezny od ilosci uzytkownikow, im wiecej tym prowizja mniejsza.

Ten post edytował lukaskolista 24.10.2011, 19:49:28
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: 29.12.2025 - 03:44