cawte.
spravil som moju prvu kontrolu proti botom (captcha) a potreboval by som vas nazor, ze ci je aspon trochu postacujuca :)
dakujem
http://skuska.pantoflesport.cz/test.php
Fórum › PHP
Captcha
To 7raul : Změň font, některé Ty písmena jsou špatně čitelné ... a někdy se ty zelené a žluté pomalu spojují, že to nejde poznat.
To 7raul : tak lehké, že to má problém přečíst i člověk? hmm, tak tím odradíš nejen roboty, ale i lidi.
To 7raul : Nejde o to, aby to bylo hezčí pro oči, ale čitelné pro lidi :-)
Me prijde ok, ale podle nazoru soudim, ze to je "blbuvzdorna" Captcha :D
Mi se taky ten obrázek s kódem vůbec nezobrazí (Opera).
2 7raul: No je to myslene tak, ze se ti tam nedostanou jak roboti, tak i blbi lidi, kteri nezvladnou prekousat ten kod :D
Mi to prijde ok.Videl sem uz teda horsi kody.
S CAPTCHA systémy mám nemalé zkušenosti a pokud to chceš dále rozvíjet, tak se opravdu zaměř na zlepšení fontu. Je dobré zajistit, aby tento prvek zatěžoval uživatele co nejméně a pokud je to možné, tak vůbec (možno řešit javascriptem). Stejně tak je dobré zajistit funkčnost, pokud někdo nemůže zobrazit obrázek (např. generování zvuku).
inak nechapem preco vam to niektorym nechce zobrazit...
tu je zdrojak:
Test.php
<iframe id="myframe" src="captcha.php" scrolling="no" marginwidth="0" marginheight="0" frameborder="0" vspace="0" hspace="0" style="overflow:visible; width:100%; display:none" name="myframe"></iframe>
<a href="captcha.php" target="myframe">Refresh obrázka</a>
<br>Opíšte žltý text z obrázku.
<br><font color="red"><strong>POZOR:</strong></font>Text neobsahuje nulu!
<br>Systém je citlivý na veľkosť písmen!<br>
<form method="post" action="">
<input type="text" name="captcha">
<input type="submit" value="OK">
</form>
<?
session_start();
if (isset($_POST['captcha'])){
if ($_POST['captcha']==$_SESSION['captcha']){
echo "Váš kód bol správny";
}else {
echo "Váš kód nebol správny";
}
}
?>
Captcha.php
<?php
session_start();
header('Content-type: image/png');
$im = imagecreatetruecolor(340, 70);
$white = imagecolorallocate($im, 100, 100, 100);
$grey = imagecolorallocate($im, 155, 155, 155);
$grey1 = imagecolorallocate($im, 051, 204, 051);
$black = imagecolorallocate($im, 255, 255, 000);
imagefilledrectangle($im, 0, 0, 399, 70, $white);
function nahodny_text ()
{
$moznosti= array("1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","R","S","T","U","V","W","Y","Z");
$mista="8";
$heslo="";
for ($i=0 ;$i<=$mista-1 ;$i++)
{
$nahoda=rand(0, count($moznosti)-1);
$heslo.=$moznosti[$nahoda];
}
return $heslo;
}
$text = nahodny_text();
$_SESSION['captcha'] = $text;
$text_oklamanie = nahodny_text();
$text_oklamanie_2 = nahodny_text();
$font = 'pismo.ttf';
$font1 = 'pismo1.ttf';
imagettftext($im, 50, 10, 31, 35, $grey, $font, $text_oklamanie);
imagettftext($im, 50, -10, -31, 35, $grey1, $font, $text_oklamanie_2);
imagettftext($im, 50, 0, 10, 50, $black, $font1, $text);
imagepng($im);
imagedestroy($im);
?>
jj tiez mam Operu 9.5 , asi to robi iframe... nemam cas sa s tym hrat...
skus dat do style presnu vysku a sirku toho obrazka
obrazek je citelny v poradku; ale vypni citlivost na velikost pismen a odstran znaky, ktere jdou lehce zamenit (nebo je povazuj za stejne) a to znaky i,l,1,0,O,...
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Captcha a UTF-8 — založil liborb
Obrázková Captcha je hrozná — založil RomanZ
Captcha kod - alternativy — založil TuTi_fruTi
PHP verifikácia: matematická CAPTCHA — založil None
Obijdete CAPTCHA pri formulari — založil dartanan
Moderátoři diskuze