Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Projektowanie bazy pod MLM
KasperKRK
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 2.01.2011

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


Witam serdecznie ;)

Może ktoś z Was kiedyś budował baze pod prosty MLM. Postaram sie przybliżyć zasade działania systemu poleconych który będę budował.


Etap 1.
Rejestracja użytkownika z polecenia (link referencyjny) lub bez takiego polecenia.

Etap 2.
Użytkownik zarejestrowany, wysyła innym link referencyjny do sklepu internetowego.

Etap 3.
Użytkownikowi przydzielany jest rabat w sklepie internetowym, w zależności od dokonanego zamówienia osoby pod nim. 5% od osoby w pierwszym poziomie poleconych, 3% od drugiej osoby, 1% od trzeciej osoby.

Jakieś porady jak najlepiej rozwiązać taki system? I najlepiej tak żeby ta baza działała w miare wydajnie?
Z góry dzięki za odpowiedź ;)

Ten post edytował KasperKRK 14.02.2012, 19:18:17
Go to the top of the page
+Quote Post
daniel1302
post
Post #2





Grupa: Zarejestrowani
Postów: 602
Pomógł: 30
Dołączył: 1.08.2007
Skąd: Nowy Sącz

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


To jest mały system. Ja bym to rozwiązał tak

users:- Zarejestrowani użytkownicy
id|login|email|pass(varchar32[md5 lub inny])|referer(ID polecającego)|doscount(tinyint(1)|registred(int-unsigned)|

activation: - Użytkownicy do aktywacji
id|login|email|pass|referer|registred|code(najlepiej md5)

id to numery ID użytkowników
w kolumnie referer- trzymasz ID polecającego
registred- Wartość time() wrzucasz do tego pola podczas rejestracji i później łatwo odczytujesz datę- date(xxx, $sth['registred']);
discount- jakaś dodatkowa zniżka we całkowica zniżka

Teraz rejestracja na 2 sposoby:
1) Podczas rejestracji wrzucasz dane do activation i później przy aktywacji je przenosisz.
2) Nie robisz tabeli activation tylko generujesz md5 np na podstawie hasła loginu, daty rejestracji czy emaila(jakoś musisz rozwiązać aby później ponownie wygenerować przy aktywowaniu konta taki sam z tych samych danych). I dodajesz w tabeli users pole actived(bit-default 0);

Teraz same zniżki na 2 sposoby:
1) Przy rejestracji wykonujesz takie zapytanie
Kod
SELECT count(id) FROM USERS WHERE referer=ID_mojego_polecającego

i sprawdzasz if'em, bądz switchem
switch ($xx['id'])
{
default: $discount=0; break;
case 1: $discount=5; break;
case 2: $discount=3; break;
case 3: $discount=1; break;
}
i dodajesz "ID_mojego_polecającego" wartość tej zniżki;


2) Albo taki if/switch wstawiaszprzy cenach.
Go to the top of the page
+Quote Post

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: 23.12.2025 - 10:22