Když už se do toho autor pustil, mohl to vzít trochu podrobněji. Dají se použít i další možnosti, např. kontrola refereru, kontrola nastavení prohlížeče atd. Jde to samozřejmě všechno obejít, ale většinou to značně znepříjemňuje podvrhnutí - a o to tady jde. Pro větší přehled lze ukládat vše do DB a "podezřele podobné" zápisy později vyřadit.
Pro vážnější ankety bych zvolil kombinaci emailu a captcha - tam ale musíte počítat se značným znepohodlněním hlasováním pro uživatele.
...kontrola roztlišení obrazovky, identifikace podle chrakteristických pohybů myši, traceroutu k hlasujícímu nebo otevřených portů na jeho počítači, operačního systému, chování uživatele (pokud na shodnou stránku s anketou zabrousí Pepíček, Mařrnka a Šebestavá, bude pohyb (sledovaný přes referer a nastavení a typ prohlížeče) vypadat jinak, než když bude pepíček hlasovat třikrát...
Taky je možné nepřipustit z jednoho počítače víc hlasů pro jednu položku, či třeba kontrolovat rozložení hlasů od jednoho IP mezi položky a vyřadit abnormality, nebo při podezření z podvádění zobrazit chybovou hlášku s nabídkou kontaktu admina. Pokud uživatel projeví snahu stěžovat si, hlasovat mu umožníme :-).
Jo a význam slova captcha jsem pochopil úplně sám jen podle zmínky o OCR. To su, CO?
To si potom muze napsat pomerne jednoduchy program, ktery tam prida treba 1000 hlasu a zmanipuluje anketu, lze to resit prisnosti treba globalnim nastavenim 1 hlas za hodinu, ale tim se zase omezi legitimni uzivatele, tzn.
Bezpecnost anket je: omezeni uzivatelu zpusobujici nepresnost vysledku, ktera muze byt i vyssi, nez u nezabezpecenych anket.
Ted trochu out: Proc zde nefunguje tag U, ktery slouzi k podrzeni textu? Ani pomoci CSS v tagu SPAN to nejde, ani tag DIV neni supportovan a to same viceurovnove nadpisy Hn =(