CryptograPHP

Материал из Энциклопедия о программировании
Перейти к: навигация, поиск

CryptograPHP — популярная, простая, красивая, гибкая и функциональная PHP библиотека (скрипт) для создания captcha на сайте.

Стиль программирования

Библиотека CryptograPHP написана в процедурном стиле, не ООП.

Лицензия

Библиотека распространяется по лицензии, совместимой с GNU GPL.

Состав

Скрипт cryptographp состоит из 4-ёх файлов:

  1. cryptographp.cfg.php
  2. cryptographp.fct.php
  3. cryptographp.inc.php
  4. cryptographp.php

Автор

Sylvain Brison

Версия

Скрипт не развивается с конца нулевых годов 21-ого века, судя по копирайту, разработка пришлась на 2006—2007 годы. Последняя официальная версия v1.4.

Системные требования

Для работы cryptographp требуется библиотека для работы с изображениями GD2, что является популярным расширением PHP.

Установка

Загрузить исходные файлы на сайт в папку, например, captcha или cryptographp. В коде страницы, где хотим видеть captcha, вставить код:

<?php
$cryptinstall = 'captcha/cryptographp.fct.php';
require_once $cryptinstall; // Подключаем файл необходимый для генерации изображения капчи
?>
<form action="verifier.php?<?php echo SID; ?>" method="post">
	<?php dsp_crypt(0,1); ?>
	Введите код: <input type="text" name="code">
	<input type="submit" name="submit" value="Проверить">
</form>

В переменной $cryptinstall прописывается путь до файла cryptographp.fct.php. Поскольку этот файл работает на сессиях, то подключать его надо в самом начале страницы до начала, какого либо html кода. Обновив страницу с этим кодом, мы должны увидеть картинку с captcha, которую можно обновлять без перезагрузки страницы. Теперь на стороне обработчика (в нашем случае это verifier.php), обрабатывающего комментарии проверяем правильность captcha:

<?php
$cryptinstall = 'captcha/cryptographp.fct.php';
require_once $cryptinstall;
	if (chk_crypt($_POST['code'])) {
		// Код captcha введен правильно
	} else {
		// Ошибка! Неправильный код captcha
	}
?>

Настройка

Cryptographp легко настраивается под любые запросы. Можно настроить множество параметров: любая длина строки или случайная длина, наборы символов, шрифты, цвета, размеры символов и картинки в целом, угол поворота символов, шумы и многое другое. Для этого откроем файл cryptographp.cfg.php, в котором содержатся основные настройки. Переменные $cryptwidth и $cryptheight содержат значение ширины и высоты создаваемого изображения captcha. В переменной $bgimg можно указать путь до фонового изображения captcha, если ничего не указывать, то будет фон белый или серый в соответствии от значений $bgR, $bgG и $bgB. Чуть ниже есть массив $tfont[], который содержат различные шрифты. Убрав комментарии со строк, можно выбрать подходящие шрифт. Переменные $charnbmin и $charnbmax содержат минимальное и максимальное число символов на картинке. Меняя эти параметры, не забывайте про длину создаваемого изображения, чтобы все символы влезали. В $charspace хранится значение интервала между символами в пикселях. Переменные $charsizemin и $charsizemax это минимальный и максимальный размер символов. Изменяя $charanglemax можно разворачивать символы на угол до 360°. Переменная $cryptformat хранит формат создаваемого изображения (png, gif или jpg). Если создаваемая картинка не подходит под дизайн, вы можете скачать с сайта разработчика файл cryptographp.cfg.php и заменить существующий.

Ссылки