Autor Zpráva
juneau
Profil
Mam script, ktery do stranky vlozi typickou anketu ... otazka + par odpovedi, coz jsou zaroven odkazy na dalsi cast ukladajici odpoved do db. Neni to zadna anketa s ukladanim IP a pod, je to jen jednoduchost, kde se skutecnost hlasovani ulozi do SESSION a to jedine se pak kontroluje.

Jenze se taky stane to, ze hlasuji roboti. Proste zamiri po odkazech v ankete dal, coz je "princip hlasovani"... a ja se na te vyhodnocovaci strance snazim rozlisit, zda jde o bota nebo o cloveka. Zakazal jsem pristup na ten soubor v robots.txt, hledam v HTTP_USER_AGENT retezec "bot" ... ale rad bych vedel, jestli neexistuje neco lepsiho, jednoznacnejsiho.
Kajman
Profil *
Řešením bývá hlasování pomocí furmulářes s POSTem. No, a jestli si můžete dovolit prohřešek proti přístupnosti, tak lze testovat http_referer, zda je z vašich stránek.

A user agent by bylo asi lepší rozlišovat nejen podle bot. Třeba robot od morfea (centra) se tuším jmenuje holmes.
Kalda
Profil *
Pakliže máte na serveru podporu browscap.ini použijte funkci get_browser
http://www.php.net/manual/en/function.get-browser.php
Jednou z položek pole informací o browseru je crawler, který určuje robota, zda se jedná nebo nejedná o robota.

Dle PHP dokumentace je doporučená automatická aktualizace definičního souboru ze zdroje http://www.garykeith.com/browsers/downloads.asp , což kvalitní webhosteři zajišťují zcela automaticky.
temistokles
Profil
kajman: referera kontrolovat nedoporucujem, lebo kazdy lepsi firewall ho blokuje, a uzivatelov nedostupnost rozhodne nepotesi. OT: pocul som ze v cechach sa pouziva firewall podstatne menej ako na slovensku... :)
Bender
Profil
Nebo stačí zakázat v robots.txt
printf_jinde
Profil *
místo odkazů bych dal tlačítka, nebo bych do odkazu přidal rel="nofollow"
Oswald
Profil
Určitě bych to udělal tim formulářem přes POST, pokud z nějakého důvodu lpíš na hlasování přes odkaz, tak bych to udělal, asi takhle:

<form method="post">

[sem JavaScriptem vygenerovat odkazy a navěsit jim na onclick funkci, která nastaví příslušnému radiu checked na true a zavolá formulář.submit()]

<noscript>
<input type="radio" name="moznost1" >
<input type="radio" name="moznost2" >
<input type="submit">
</noscript>
</form>
Oswald
Profil
Ty radia by vlastně chtělo dát ven z noscript a skrýt je pomocí js.
error414
Profil *

místo odkazů bych dal tlačítka, nebo bych do odkazu přidal rel="nofollow"


mute se ale stat ze se zmeni alogoritmy robotu a budou tenhle parametr ignorovat.

Pres post
Toto téma je uzamčeno. Odpověď nelze zaslat.

0