|
PHP PHP aplikacije, Smarty, PEAR |
|
Alati teme | Način prikaza |
01. 11. 2006. | #11 | |
profesionalac
Professional
|
Citat:
Jel i ovde ciljas na JS?
__________________
http://oliver.glogonj.net |
|
02. 11. 2006. | #12 |
Super Moderator
Invented the damn thing
Datum učlanjenja: 06.06.2005
Poruke: 2.371
Hvala: 370
701 "Hvala" u 194 poruka
|
Ne, ilija je objasnio JS varijantu, ovo je sve server side (php only .
Dakle, php generise neki random string i generise ga unutar forme kao vrednost hidden polja tipa: Kôd:
<input type="hidden" name="protect_form" value="2f2hfgvjgj" /> Inace, ovaj feature je breakable, ali mnogo toga treba odraditi od strane spamera: - treba da ucita prvo formu - parsuje to polje sa reg_expom da bi iscupao taj hidden field - posalje post request, uz snimanje cookia (posto su uz ceo proces ukljucene sesije Dakle, otarasio si se 90% spamera |
02. 11. 2006. | #13 |
Ivan Dilber
Sir Write-a-Lot
|
prednost ovog sto Dinke predlaze je sto ce raditi u svakom browseru... S druge strane javascript je bolja zastita jer malo pametniji spajder ce pokupiti sva polja i poslati ih zajedno sa cookiejem.. to nije uopste toliko komplikovano posto LWP i slicne biblioteke vecinu posla urade same..
Dobra fora za zaustavljanje spajdera je da se na ovo Dinketovo doda jedna onSubmit javascript funkcija koji ce uraditi nesto sa tom vrednosti u hidden polju, tipa da je pomnozi sa 2 ili tako nesto, to ce malo koji spajder moci da prevazidje, ali opet to zahteva podrsku za JS...
__________________
Leadership is the art of getting people to want to do what you know must be done. |
02. 11. 2006. | #14 | |
profesionalac
Professional
|
Citat:
__________________
http://oliver.glogonj.net |
|
02. 11. 2006. | #15 |
Boban Karišik
Expert
|
A mozes i da stavis ovako nesto, i onda si se otarasio svih onih koji ne znaju da racunaju...
Kôd:
function captcha() { $numbers = array("zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"); $rand = array_rand($numbers,2); $result=$rand[0]+$rand[1]; $question = "<b>".$numbers[$rand[0]]."</b> plus <b>".$numbers[$rand[1]]."</b>"; $out .= '<label for="captcha">Please enter the result into the box below:(Answer in numbers only)<br /> '.$question.' equals </label> <input type="text" name="captcha" id="captcha">'."\n"; $out .= '<div><input type="hidden" NAME="result" VALUE="'.$result.'"><br /></div>'; return $out; }
__________________
Ako već nisi Anđeo, bar budi čovek... |
|
|
Slične teme | ||||
Tema | Početna poruka teme | Forum | Odgovori | Poslednja poruka |
SaaS vs. klasicne licence | ivanhoe | e-Business | 3 | 25. 07. 2010. 10:09 |
Jel ovo neka vrsta spama? | Dragan Babić | Web Hosting, web serveri i operativni sistemi | 4 | 07. 02. 2009. 22:42 |
Zastita komentara od spama | oliver78 | PHP | 28 | 07. 06. 2007. 23:26 |
Efekti interneta na klasicne medije | ivanhoe | Marketing i SEO | 11 | 21. 11. 2006. 19:23 |
Contact An Alien! | Vokic | Opušteno | 1 | 23. 10. 2006. 18:46 |