|
Многие программисты (включая меня) боятся «картиночных» капч. Ну это тех, где нужно вводить символы с картинки. Боятся не в смысле, что при виде залезают под кровать и начинают плакать, а в том смысле, что устанавливать такие капчи как правило – неприятное занятие.
Оно неприятно только до тех пор, пока программист не решает «разобраться уже наконец» и «мужик я или не мужик?!» и лезет в гугл за информацией, чтобы составить себе один единственный модуль с капчей, понять его как свои 5 PCI портов и полюбить светлой любовью на веки вечные.
Короче. Я к тому, что мне нужно было сегодня установить картиночную капчу, а стандартного модуля под рукой у меня не было. Гугл, как всегда, на высоте.
Что нужно делать, чтобы в несколько этапов поставить капчу на страницу?
1. Включаем сессии в index.php с помощью start_session(); (можно и непосредственно перед формой, но в самом начале при инициализации движка как-то приятнее)
2. Добавляем файл captcha.php (генерирует капчу) и вот этот файл (шрифт) в корень сайта.
3. В форму, где нужно показать капчу добавляем поля:
<input type=text name=’random_string’> – это поле, куда надо будет вводить капчу
<img src=’/captcha.php’ border=1> – это изображение кода (картинка)
4. В файле, где у нас происходит обработка запроса из формы, добавляем вот такой код:
session_start();
$captcha_check = 0;
if ($_POST['random_string'] == $_SESSION['random_string']) {
$captcha_check = 1;
unset($_SESSION['random_string']);
}
Теперь, если капча введена верно, мы получим в переменной $captcha_check значение 1, в противном случае ноль (или пустоту). Ну а дальше – делаем уже то, что хотим.
Оставьте свой комментарий
|
14.04.2009 в 10:05 пп
Я тоже сделал прикольную капчу) можешь посмотреть у меня на блоге.
15.04.2009 в 1:03 дп
Довольнотаки интерессно и пазновательно, спасибо за пост!!
15.04.2009 в 1:20 дп
DimoninG, не мог бы ты написать скрипт который отсылает все rss ленту на определенный email, где title=теме сообщения!
Или может такие уже есть, подскажи!
15.04.2009 в 5:15 дп
Владимир, мог бы. Но проблема в том, что я не меценат, а платить как правило никто не хочет.
15.04.2009 в 7:22 дп
Почитаешь, вроде как и не так сложно все сделать. Хотя без опыта програмированния все равно немного напряжно. Мда, нужно устраивать маленький ликбез…
15.04.2009 в 12:09 пп
DimoninG Я сам программист, но только на с++, правда на php несложно перейти, но времени не хватает все изучать. В любом случае я уже нашел этот скрипт. А блог твой очень интерессный, постоянно его читаю!
15.04.2009 в 1:27 пп
Владимир, благодарю :)
По поводу перехода – если Вы хорошо знаете C++ (со всеми ужасами тройных указателей, утечек памяти, ньюансов использвания классов и потоков), то PHP Вам покажется просто детской забавой ;) У меня переход занял 2 дня (включая изучение часто используемых стандартных функций). С другой стороны могу сказать, что C++-серы сейчас больше получают и работа у них КУДА интереснее, поверьте. Кстати, все хочу свой шутер на C++/OpenGL дописать, да руки не доходят.
15.04.2009 в 4:34 пп
Шутер у нас димломники писали, прям как CS, толко карта института. разумеется движок свой + весь внешний вид
15.04.2009 в 6:39 пп
Чет вы ребята от темы отошли) …
[это ты от темя отошел, друг, извини; рекламься за чужой счет в другом месте]
24.04.2009 в 10:50 дп
Отличная статья, проще объяснения еще не видел :razz:
17.07.2009 в 12:11 пп
За простоту как всегда зачёт.
А насколько ломаема данная, рассмотренная в этой статье, капча? Генерилку нужно уникальную писать, как я понимаю, чтоб автоботы не бегали?
17.07.2009 в 12:25 пп
Lex Nevermind, думаю, что и так норм. но можешь поменять код генерации рисунка. всегда мечтал о капче в цветочек :)