Сайт сообщества | Клуб пользователей | О проекте

Имя
Пароль
ПравилаРегистрацияСправка
Сообщения за деньПоиск

Вернуться   Клуб пользователей портальной системы RUNCMS > Опен Ресурс > Разработчикам

 
 
Опции темы Опции просмотра
ZlydenGL вне форума ZlydenGL
Напильникъ - наше все

Аватар для ZlydenGL

| Цитировать Старый #1 04-07-2012, 12:49

На сайте разработчика капчи уже давно выложена версия kcaptca 2. Она отличается от первой капчи в лучшую сторону тем, что добавляет цифровой шум на изображение с буквами/цифрами, из-за чего ботам становится еще сложнее прочитать кодовое слово. ИМХО очень полезная фишка, и в классической роне было бы неплохо ее заиметь. И зачем же дело стало?

Как обычно есть два пути:
1. Просто запустить новую капчу (например ко мне в последнее время боты стали слишком уж часто ломиться)
2. Полностью интегрировать новую капчу с админкой роньки.

Сейчас я опишу вариант 1, а чуть позже выложу и вариант 2.

Итак, последовательность наших действий:
1. Идем на оффсайт и качаем архив c новой версией.
2. Старый обработчик капчи, расположенный по адресу /class/kcaptcha, либо убиваем (что менее рекомендовано на случай какой-либо нестыковки) либо переименовываем в /class/kcaptcha_old (чтобы на всякий пожарный иметь рабочую версию под рукой).
3. Распаковываем архив с новой версией в /class (внутри уже есть правильная директория с правильным именем).
4. В конце файла /class/kcaptcha/kcaptcha.php заменяем
PHP код:
}

?> 
на
PHP код:
}
if(isset(
$_REQUEST[session_name()])){
   
session_start();
}

$captcha = new KCAPTCHA();

if(
$_REQUEST[session_name()]){
   
$_SESSION['captcha_keystring'] = md5($captcha->getKeyString());
   
// if you change hash method don't remeber also change where you check session
   //  $_SESSION['captcha_keystring'] = sha1($captcha->getKeyString());
   //  $_SESSION['captcha_keystring'] = $captcha->getKeyString();
}
?> 
5. По дефолту новая капча настроена очень неплохо, но при необходимости можно отредактировать любые доступные настройки через файл /class/kcaptcha/kcaptcha_config.php - как минимум рекомендую изменить или отключить "подпись" к изображению, задав переменной $show_credits значение false. Остальное можно позаимствовать из настроек текущей капчи (хранящихся в файле /modules/system/cache/kcaptcha.php) - НО НИ В КОЕМ СЛУЧАЕ НЕ ПЕРЕПИСЫВАЙТЕ ФАЙЛ КОНФИГА ЦЕЛИКОМ!!! Иначе новая капча просто не заведется.


Вот и все! По желанию из директории /class/kcaptcha удаляем лишние файлы form_example.php и index.php - они нужны лишь для примера. Можно еще и папку шрифтов новой капчи пополнить шрифтами из старой. И так далее, по мере работы фантазии

P.S. Админка в части настройки капчи свой функционал не теряет - но изменения, естественно, в обработчик капчи не пойдут - для этого нужен вариант 2.
P.P.S. "Доработка" по варианту 1 работает как для RunCMS ветки 1.6, так и для 2.х. Вариант 2 скорее всего будет также соответствовать этому условию
P.P.P.S. Архив с новой капчей на всякий случай прикладываю к данному сообщению.
Вложения
Тип файла: zip kcaptcha.zip (46.2 Кбайт, 6 просмотров)
Оценка сообщения (репутация)
+8 LARK положительно: +


Не ошибается только тот, кто ничего не делает. Ковчег построил любитель. Профессионалы строили Титаник.
  Сообщения: 777 c 22.09.2008 | Репутация: 92
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Рейтинг@Mail.ru Хостинг провайдер Majordomo. Powered by: vBulletin Version 3.0
Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Все разделы прочитаны - Руководство форума - Архив - Вверх
Rambler's Top100
Output: 117.69 Kb. compressed to 115.86 Kb. by saving 1.83 Kb. (1.55%)
Page generated in 0.08679 seconds with 11 queries