ПользовательПользователь №: 53 Сообщений: 35
| Как-то напрягает смотреть на всех сайтах на одинаковый секретный код.
Предлагаю сделать что-то вроде этого:
1. Создаем папку font, бросаем в нее 5 красивых шрифтов. Называем их 1.ttf, 2.ttf.... и т д.
2. Создаем папку code_img и бросаем в нее 5 красивых картинок 75х20. Называем их 1.jpg, 2.jpg..... и т.д.
В Format image key пишем что-нибудь типа
PHP - Код | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| <?php // Format image key switch(isset($_REQUEST['gfx'])) { case "gfx": $code = substr(hexdec(md5("".date("F j")."".$_REQUEST["random_num"]."".$sitekey."")), 2, 6); $im = rand(1, 5); $rdm = rand(1, 5); $image = ImageCreateFromjpeg("путь к папке со шрифтами/$rdm.jpg"); $text_color = ImageColorAllocate($image, rand(70,170), rand(70,170), rand(70,170)); Header("Content-type: image/jpeg"); imagettftext($image, 14, rand(-3, 3), 15, 18, $text_color, "путь к папке с картинками/".$im.".jpg", $code); ImageJpeg($image, "", 50); ImageDestroy($image); exit; break; } ?> |
В итоге, имеем каждый раз произвольную картинку с произвольным шрифтом.
P.S. Шрифты нужно подбирать примерно одинакового размера, т.к. размер шрифта мы не меняем.
В строке отрегулировать произвольный цвет шрифта RGB [0..255] (здесь rand(70,170), отступы слева и сверху... в общем методом научного тыка. Картинки выбрать такого цвета, чтобы любой шрифт читался. (ненавижу, когда заполнишь форму, а код прочитать не можешь и приходится обновлять страницу).
Кстати, вопрос специальстам.
Как сделать фичу ... ссылку "Не вижу код"... чтобы при клике на ней обновилась картинка с новым кодом без перезегрузки страницы? |
|