Pytanie moje brzmi: w jaki sposób gromadzić adresy ip osób, które oddały głos?
- Czy zapisywać je do bazy danych, do tabeli która będzie składać się z dwóch kolumn: id elementu i ip? i każdy numer ip to nowy wiersz?
- Czy zapisywać je do tabeli w bazie danych z kolumnami jak wyżej, jednakże w taki sposób, że jeden wiersz będzie zawierał id i w polu ip wszystkie ip, które oddały głos na element o danym 'id'? Potem wykorzystać funkcję explode do porównania z aktualnie oddającym głos...
- Czy może zapisywać adresy ip do pliku? Jedna linijka to adres ip + id elementu.
Zastanawiam się czy sposób nr 1, przy założeniu 10 000 elementów na które można głosować i 10 000 użytkowników oddających głos na każdy z nich, nie będzie zbyt obciążający skrypt? Przy opisanym założeniu powstanie 10 000 000 wierszy w tabeli z adresami ip... A jeżeli jeszcze bardziej zwiększy się liczba elementów i głosujących? (generalnie ciekawy jestem czy jest jakieś praktyczne ograniczenie ilości wierszy i kolumn w tabeli bazy danych?)
W sposobie nr 2, może się okazać, że braknie miejsca na dopisywanie kolejnych adresów ip... gdyż z tego co się orientuję pola typu text czy nawet longtext ma jakieś ograniczenia ilości bajtów:>
W przypadku sposobu nr 3 też obawiam się o szybkość wykonywania skryptu...
Co Wy na to? Proszę o podpowiedzi i rady w poruszonej kwestii. A może ktoś widzi jakieś inne rozwiązanie problemu blokowania wielokrotnego głosowania? Może warto dodać jeszcze sprawdzanie cookies.