Pogledajte određenu poruku
Staro 02. 11. 2006.   #12
dinke
Super Moderator
Invented the damn thing
 
Avatar dinke
 
Datum učlanjenja: 06.06.2005
Poruke: 2.371
Hvala: 370
701 "Hvala" u 194 poruka
dinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamen
Default

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" />
a takodje ga ubaci u sesiju kako bi mogao posle da imas sa cime da poredis ($_POST['protect_form'] sa $_SESSION['protect_form']). Takodje, slicno mozes sa vremenom, generises neki timestamp prilikom ucitavanja forme, pa posle proveravas koliko je sec proslo.

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
__________________
Caught in a Web|Blogodak
With great power comes great responsibility!
dinke je offline   Odgovorite uz citat