php Проект KCAPTCHA 2 

Дата публикации  Дата изменения25.01.15  КомментарииНет   Просмотры989

Проект KCAPTCHA — это готовое решение, написанное на языке PHP, которое вы можете бесплатно скачать и установить на свой сайт для защиты от спама и флуда.

Проект KCAPTCHA ставит перед собой цель предложить программисту решение с одной стороны весьма защищенное, с другой — максимально малотребовательное к ресурсам и конфигурации хостинга.

Принцип действия: скрипт заводит сессию и записывает в нее под именем $_SESSION['captcha_keystring'] случайным образом сгенерированную строку, после чего выдает изображение, содержащее эту самую строку в зашумленном виде. При проверке пользовательского ввода вам остается только прочитать из сессии кодовую строку и сравнить с тем, что ввел пользователь (подробнее об аспектах безопасности при проверке пользовательского ввода).

Системные требования: PHP версии 4.0.6 и выше с поддержкой GD версии 2. Не требуются ни библиотеки для работы со шрифтами (Libttf и др.), ни ImageMagick.

В комплект входит набор растровых шрифтов, так что скрипт, скорее всего, будет сразу готов к работе, не требуя установки дополнительных компонент.

Можно настраивать цвета и набор символов, применяемые при создании изображения.

Страница проекта

Пример использования может быть такой:

В самом верху старницы, до html кода:

 <?php
include('kcaptcha.php');
// Подключение капчи
session_start();
// включение сессии
?>

Между <body></body>:
<form action="" method="post">
<p>Enter text shown below:</p>
<p><img src="./?<?php echo session_name()?>=<?php echo session_id()?>"></p>
<!--// на основе сессии генерируется и показывается картинка //-->
<p><input type="text" name="keystring"></p>
<!--// вводятся цифры с картинки //-->
<p><input type="submit" value="Check"></p>
<!--// отсылаются //-->
</form>

<?php 
if(count($_POST)>0){
	if(isset($_SESSION['captcha_keystring']) && $_SESSION['captcha_keystring'] === $_POST['keystring']) // сравниваются на строгое совпадение введенные элементы и сгенерированные капчей
{
 echo "Correct"; // совпало – "Правильно"
	}else{
 echo "Wrong";// не совпало – "Неправильно"
	}
}
unset($_SESSION['captcha_keystring']);//удаление запомненной в сессии строки элементов
?>

  Размер:  46,19kB | Изменен: 10.01.13 | Загрузок: 24
Бесплатные курсы

Категории

Теги: , , ,

Оцените материал:

Рейтинг: 0.0/10 (0)


КомментарииКомментарии:

Нет комментариев к этой статье.


Поля, обозначенные как *, обязательны.





Максимальная длина сообщения 900 символов. Осталось   символов

 

Старые →← Новые