Captcha(анти спам фильтр)

Статус
В этой теме нельзя размещать новые ответы.

g-prime

איך בין גאָט
Регистрация
11 Авг 2008
Сообщения
759
Реакции
1.081
Здравствуйте! Делаю новую версию своего скриптика, вот и хочу защитить от спама, через форму. Ну так вот какая лучше каптча, на Ваш взгляд?
 
простая капча

Сначала мы генерируем число, с помощью mt_rand.И суем его в сессию. А потом выводим это число на изображение.

Nospam.php-файл генерации рисунка
PHP:
session_start();
//стартуем сессию
$_SESSION['protect']=mt_rand("1111","9999");
//генирируем случаное число от 1111 до 9999 и суем в переменную сессии 
Header("Content-type: image/gif");
$image=imagecreate(100,50);
//Создаем холст
ImageColorAllocate($image,100,100,100);
//заливаем его цветом
$textcolor=ImageColorAllocate($image,0,0,0);
//определяем цвет текста
imagestring($image,5,26,19,$_SESSION['protect'], $textcolor);
//выводим текст сгенерированный mt_rand на изображение 
imageGif($image);
Index.php-файл проверки
PHP:
session_start();
echo "<img src=nospam.php>";
//выводим рисунок сгенерированный в файле nospam.php и форму
<form method=POST>
<input type=text name=text>
<input type=submit name=go>";
if(isset($_POST['go'])){
if($_POST['text']==$_SESSION['protect']){echo "Верно";}else{echo "Поробуйте еще раз";}
//проверяем равен ли текст посланный через форму тому числу что мы сгенерировали в файле nospam.php.
}
session_unregister('protect');
 
Пользуюсь капчей, которую взял из DLE, пока устраивает)
 
Сначала мы генерируем число, с помощью mt_rand.И суем его в сессию. А потом выводим это число на изображение.

Блин! мне нравится такая защита! Всюду бы так делали :)

тогда весь процесс распознавания на стороне бота свелся бы к выдергиванию ответа из сесии :)
 
Блин! мне нравится такая защита! Всюду бы так делали
тогда весь процесс распознавания на стороне бота свелся бы к выдергиванию ответа из сесии
всюду так и делают
если ты думаешь что так просто получишь к данным в сессии , поделись с нами секретом , мега-хаЦкер
 
всюду так и делают
если ты думаешь что так просто получишь к данным в сессии , поделись с нами секретом , мега-хаЦкер

Блин:ah: от это я погорячился. Дело в том что это число протект, оно не передается тому кто дергает страничку, а хранится на серваке в файлике сессии с уникальным СИДом. Вот этот сид и передается дергаещему - данных из него не вытянуть. Ну разве-что заломиться на сервер в директорию где хранятся эти файлики.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху