ďťż

Blokada przed ponownym głosowaniem Ankieta, oceny...

       

Podstrony


telcocafe

Dotychczas blokada znajdowała się tylko w cookies (które można usunąć). Postanowiłem to zmienić. Okazuje się, że rozwiązanie nie jest proste.

Utworzyłem tabelę votes, gdzie będę przechowywał głosy zalogowanych oraz gości. Jeżeli w przypadku zarejestrowanego użytkownika będę zapisywał jego ID, zaś inaczej - adres IP, będzie można zagłosować 2 razy. Nie mogę również polegać na samym adresie IP, który w wielu przypadkach jest zmienny (biorąc też pod uwagę sieci osiedlowe lub blokowe).

Zapis zewIP->wewIP również odpada - prawdopodobnie "użyszkodnik" odda tyle głosów, ile może ustawić wew. IP.

Ankietę można otworzyć zarówno tylko dla zarejestrowanych, jak i dla wszystkich, dlatego zapis ID użytkownika należy rozważyć. W grę wchodzą również cookies, których nie powinienem też nadużywać. Mogę nawet zapisać ID ankiet i ocenianych pozycji w utworzonym nowym polu w tabeli users a dla gości - w votes (tu już IP). Lecz co z podwójnym głosem?

Co o tym myślicie? Jakie rozwiązanie radzicie, by było skuteczne?



Swego czasu też rozważałem ten problem i natrafiłem na:
http://forum.php.pl/...t-IP-t5810.html

Ale, rozpoznawanie po MAC nie jest łatwe. Sądze że najlepiej jest tworzyć ankiety tylko dla gości, przypisać im ciastko standartowe jako przykrywkę i drugie z ciągiem znaków. Do tego tak jak napisałeś zapisać użytkownika w bazie danych że głosował. A gościom pozwolić tylko na oglądanie wyników :P

Rozpoznawanie MAC wymaga dostępu do systemu, więc również odpada. :)

Strona Pajacyk zapisuje informację w cookies, że już kliknąłeś. Po usunięciu wpisu głos dostaje prawdopodobnie przyjęty ponownie w tym samym dniu.

W przypadku zarejestrowanych użytkowników nie będzie problemu. Co zaś z gościami? Mogę zapisywać: ZewIP->WewIP + zapisywać dodatkowo w cookies. Pozostał jeszcze problem podwójnego głosu (zalogowany + wylogowany).
Użytkownik Ferrari edytował ten post 19 maj 2007, 12:39
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.