Temos pavadinimas: WordPress, Shopify ir PHPFusion programuotojų bendruomenė :: Tekstinio kodo apsauga

Parašė BloodKiller· 2008 Sau. 20 16:01:29
#1

Kai registruojates, jus matote tekstini koda, paveikslelyje esanti koda arba jokio. Kai nera jokio kodo arba tekstinis, bot'ams atlikti autoreg'a yra labai nesunku. Taciau yra budu apsaugoti (bent jau dalinai) ir tekstini koda nuo visokiu bot'u...

Visu pirma atsidarykite maincore.php ir kur nors gale parasykite...

function convert_to_codes ($text,$stylizing=0) {
   $new_text = '';
   $random_symbols = '';
   for ($i = 0; $i < mt_rand(5,12); $i++) $random_symbols .= (mt_rand(1,2) == 1 ? chr(mt_rand(97,122)) : chr(mt_rand(65,90)));
   for ($i = 0; $i < strlen($text); $i++) $new_text .= ($stylizing == 1 ? "<span class='$random_symbols'><font_$random_symbols><$random_symbols>" : "")."&#".ord(substr($text,$i,1)).";".($stylizing == 1 ? "</span></font_$random_symbols></$random_symbols>" : "");
   return $new_text;
}




O dabar tame paciam maincore.php susiraskite...
return "<input type='hidden' name='captcha_encode' value='".$captcha_encode."'><strong>".$captcha_string."</strong>\n";



Ir keiskite i...
return "<input type='hidden' name='captcha_encode' value='".$captcha_encode."'><strong>".convert_to_codes($captcha_string,1)."</strong>\n";




Kai registruosites su tekstinio kodo sistema, uzmete aki i source pamatysite kazka tokio vietoj paprasto tekstinio kodo:

<span class='fBjfEAbb'><font_fBjfEAbb><fBjfEAbb>&#57;</span></font_fBjfEAbb></fBjfEAbb><span class='fBjfEAbb'><font_fBjfEAbb><fBjfEAbb>&#50;</span></font_fBjfEAbb></fBjfEAbb><span class='fBjfEAbb'><font_fBjfEAbb><fBjfEAbb>&#48;</span></font_fBjfEAbb></fBjfEAbb><span class='fBjfEAbb'><font_fBjfEAbb><fBjfEAbb>&#102;</span></font_fBjfEAbb></fBjfEAbb><span class='fBjfEAbb'><font_fBjfEAbb><fBjfEAbb>&#98;</span></font_fBjfEAbb></fBjfEAbb>



Redagavo BloodKiller· 2008 Sau. 20 16:01:00

Parašė kiskiss· 2008 Sau. 20 16:01:29
#2

Bet bloodas nebūtu killeris jeigu nežinotu kaip ir visa šita apeiti :)

Parašė MAnjack· 2008 Sau. 20 16:01:47
#3

Reiks išbandyt, gal ir padės, tačiau man ir su image gerai veikia :|