Autor | Zpráva | ||
---|---|---|---|
juneau Profil |
#1 · Zasláno: 6. 9. 2005, 12:21:23
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 * |
#2 · Zasláno: 6. 9. 2005, 13:08:25
Ř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 * |
#3 · Zasláno: 6. 9. 2005, 13:09:34
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 |
#4 · Zasláno: 6. 9. 2005, 17:56:57
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 |
#5 · Zasláno: 8. 9. 2005, 09:33:43
Nebo stačí zakázat v robots.txt
|
||
printf_jinde Profil * |
#6 · Zasláno: 8. 9. 2005, 21:55:31
místo odkazů bych dal tlačítka, nebo bych do odkazu přidal rel="nofollow"
|
||
Oswald Profil |
#7 · Zasláno: 8. 9. 2005, 23:59:26
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 |
#8 · Zasláno: 9. 9. 2005, 00:09:11
Ty radia by vlastně chtělo dát ven z noscript a skrýt je pomocí js.
|
||
error414 Profil * |
#9 · Zasláno: 9. 9. 2005, 08:19:20
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 |
||
Časová prodleva: 19 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0