Както достаточна давно писал скрипт капчи... вот собственно он. Если появиться вопросы пишите.В принципе он достаточно просто, минимальные знания php что бы разобраться в этом маленьком коде
<?php ///////////////////////////////////////// // By Dragor //////////////////////////// // Блог http://dragor-ww.blogspot.com/ // ///////////////////////////////////////// // Настройки //////////////////////////// ///////////////////////////////////////// //переменая !! $kapcha2 !! хранит реалный набр букв $coll = 16; // количесво букв $ugol_max = 70; // максемалный угол наклона букв $len = 16; // растояние между буквами $shr_max = 20; // максемальный размер шрифта $shr_min = 9; //минимальный размер шрифта $otvet = 0; // выводить ли в картинку ответ (0, 1) // /////////////////////////////////// $array = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, q, w, e, r, t, y, u, i, i, o, p, a, s, d, f, g, h, j, k, l, z, x, c, v, b, n, m); for ($a=0;$a<$coll;$a++) { $array_rand = array_rand($array,1); $rand = $array[$array_rand]; $kapcha .= $rand.'.'; $kapcha2 .= $rand; } $text = explode('.', $kapcha); header("Content-type: image/gif"); $dlin = $coll * $len; $img = imagecreate($dlin, 40); $black = imagecolorallocate($img, 0, 0, 0); for ($b=0;$b<$coll;$b++) { $as += 15; $ygol = rand(0, $ugol_max); $shr = rand($shr_min, $shr_max); $color = imagecolorallocate($img, rand(100, 255), rand(100, 255), rand(100, 255)); imagettftext($img, $shr, $ygol, $as, 25, $color, "ARIALUNI.TTF", "$text[$b]"); } if ($otvet == 1) { imagettftext($img, 14, 0, 14, 40, $color, "ARIALUNI.TTF", "$kapcha2"); } imagegif($img); imagedestroy($img); ?>

Комментариев нет:
Отправить комментарий