Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Na czym oprzeć skrypt generowania linku polecającego
Forum PHP.pl > Forum > PHP
Playboy
TUTAJ powinien być link... który zostaje automatycznie wygenerowany.
Chciałbym u siebie na stronie zrobić podobną rzecz tylko że link powinien być inny dla każdego użytkownika ( użytkownicy mają konta w bazie danych ) -i najlepiej jakby każdy użytkownik w linku miał swój login, ewentualnie jego postać np. jakoś zakodowaną czy coś....

Nie mam pojęcia jak się za to zabrać dlatego proszę o jakieś nakierowanie
Uriziel01
No jak to jak się zabrać ?
generujesz linki (niech będzie że po nazwie użytkownika, choć ID lub kod polecający wydają się być lepsze, ale byle by było unikalne) typu http://25pln.pl/reg/username/ potem gdy przyjedzie taki request, rozdzielasz go i wyciągając dane z adresu sprawdzasz czy po `reg` jest jeszcze jakaś wartość, następnie sprawdzasz w bazie danych czy masz takiego użytkownika, jeżeli tak to wypełniasz pole od refferer'a.

p.s-Może głupio ale założyłem że piszesz OOP i masz tam dispatcher i router dzięki czemu możesz zrobić takie coś bo automatycznie trafisz do kontrolera rejestracji. Jeżeli nie masz oczywiście odpowiednie sprawdzanie dopisujesz do pliku głównego (index.php etc.).
Playboy
w sumie tak dzisiaj myślałem to można by to było oprzeć na ciasteczkach ale chyba nie byłoby to zbyt bezpieczne?

Głównie chodzi mi o to żeby tutaj naliczało punkty za unikalne wejścia, czyli myślę że zapisywanie adresów IP do bazy byłoby dobrym pomysłem jak myślicie?
zdemotywowany
Może losuj jakieś 10-20 znaków i przypisuj je użytkownikowi, a naliczanie no to najlepiej żeby to było IP. Chociaż jak skorzysta np. z wifi czy chociażby z internetu w komórce to trochę szkoda żeby nie naliczało.
Uriziel01
Pierwsza sprawa to niezbyt rozumiem jak chciałbyś tutaj użyć ciasteczek ? Tzn. do czego dokładniej ? Bo nie widzę zastosowania w tym przypadku. Rozwiń proszę myśl `naliczało punkty za unikalne wejścia` odrobinę dokładniej i na pewno będę mógł coś doradzić.
Playboy
zakładając że zrobię to na bazie danych...
tabele: użytkownicy (id,nick,hasło,wejscia), adresy(ip)

po wejsciu na strone przez: http://link/r/nick sprawdza w bazie czy istenieje takie ip, jeśli nie to zapisuje ip do bazy i jednocześnie dodaje uzytkownikowi +1 do wejscia w przeciwnym wypadku nie robi nic....
tak to chyba mniej więcej ma działać z tego co chcę osiągnąć..

Tylko jak porównać nick z linku z nickiem w bazie?
Uriziel01
Po prostu przez szukanie danej wartości 'WHERE username = " . $username ". Nie ma tutaj sensu żadnej LIKE ani nic podobnego bo powodowały by kolizję nazw.
Playboy
tzn. źle sformułowałem pytanie: jak rozdzielić adres z którego dany internauta wchodzi na części gdzie będę mógł porównać nick w bazie...
czyli http://link/r/nick rozdzielić na link,r,nick który z kolei mogę porównać z tym w bazie i jeśli go nie będzie to zaproponować rejestrację
nospor
To co podał ci Uriziel01 to tzw. ładny link. Skoro zadałeś to pytanie, znaczy że ni wząb nie wiesz co to takiego. W takim razie niech twój link wygląda tak:
http://mojastrona.pl/index.php?nick=jakisnick
to już chyba umiesz rozebrać? Wszystko co cię interesuje jest w $_GET.
GameMaker
Kiedyś takie coś robiłem to oparłem to na osobnym pliku.

Get'em wprowadzany było id polecającego , filtrowałem zawarość geta i sprawdzałem w bazie czy takie id istnieje , potem nadawałem cookies ważnym przez 30 dni , następnie było przekierowanie na rejestracje. W rejestracji sprawdzanie zawartosci cookies (nie zapominamy o filtrowaniu) i sprawdzanie czy id jest w bazie. Adekwatnie do wyniku dodawany był polecony i profity lub nie , warto jeszcze sprawdzać IP , bo ktoś może oszukiwać.
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.