- Автор темы
- #1
В общем, поставил капчу против спама в гостевой книге. Ставил первый раз, потратил на это полдня, изучая как нужно
Результат - спам прет, как и было... (Точно судить не могу, ибо сначала там были завалы в размере около 7000 сообщений за 9 месяцев, сегодня же после установки 2 сообщения с 20 до 21 ч и еще 2 с 22 до 23 ч).
Вот есть сомнения - может что не так сделал? Вроде следовал инструкции, капча с captcha.ru (kcaptcha).
Приведу кусочки кода, может кто подскажет.
1) Вывод картинки и запрос ответа в form:
2) конечный html в браузере формируется из нескольких php инклюдами, соответственно в самый первый вставляем в начало:
3) и, собственно, проверка (производится в том же файле, где и запрос капчи, т.е. он же и обработчик формы
Ну а дальше - если $captcha_check = TRUE, то сохраняем сообщение, в противном случае - отказ.
Готовый скрипт проверил в разных браузерах - все работает, проверяет стабильно. Тем не менее, спам продолжает идти...
Или капча сегодня уже вообще не катит? Тогда как еще защититься?
Результат - спам прет, как и было... (Точно судить не могу, ибо сначала там были завалы в размере около 7000 сообщений за 9 месяцев, сегодня же после установки 2 сообщения с 20 до 21 ч и еще 2 с 22 до 23 ч).
Вот есть сомнения - может что не так сделал? Вроде следовал инструкции, капча с captcha.ru (kcaptcha).
Приведу кусочки кода, может кто подскажет.
1) Вывод картинки и запрос ответа в form:
Код:
<form action=index.php method=post>
<table border='0' width='100%'>
//................
// пропустим десяток стандартных строк - тут выводятся поля для "Имя", "e-mail" и т.п. - пропустил эти строки
//................
<td>Сообщение:</td>
<td><textarea name=message cols=40 rows=10></textarea></td>
</tr>
<tr>
<td>Текст картинки:*</td>
<td><img src='/kcaptcha/?<?php echo session_name()?>=<?php echo session_id()?>'>
<input type=text name='captcha_keystring'>
</td>
</tr>
<tr>
<td> </td>
<td><input type=submit value=отправить style='border: 1px solid #FFFFFF'></td>
2) конечный html в браузере формируется из нескольких php инклюдами, соответственно в самый первый вставляем в начало:
Код:
session_start();
3) и, собственно, проверка (производится в том же файле, где и запрос капчи, т.е. он же и обработчик формы
Код:
session_start();
$captcha_check = FALSE;
if ($_POST['captcha_keystring'] == $_SESSION['captcha_keystring']) {
$captcha_check = TRUE;
unset($_SESSION['captcha_keystring']);
}
Ну а дальше - если $captcha_check = TRUE, то сохраняем сообщение, в противном случае - отказ.
Готовый скрипт проверил в разных браузерах - все работает, проверяет стабильно. Тем не менее, спам продолжает идти...
Или капча сегодня уже вообще не катит? Тогда как еще защититься?