didlik 0 Опубликовано: 21 сентября 2011 Рассказать Опубликовано: 21 сентября 2011 Сайт с установленной демо версией avto-5.ru Необходимо интегрировать сервис KeyCAPTCHA вместо обычной капчи. Данные сервис платит за рекламу в капче. Сайт сервиса http://www.keycaptcha.com Стандартного решения для интеграции в DLE нет. Тех. поддержка заявила, что все сайты на DLE, большей частью сателлиты с ссылками на софт, и интереса для них не представляет. Хелп они создавать не будут. Поэтому прошу или разобраться как его внедрять или на платной основе внедрить на моем ресурсе. Хотя, я думаю, многим данный сервис поможет заработать дополнительную копеечку. Привожу пример инструкции по установке сервиса для нестандартный CMS который дала тех.поддержка: 1. Скачайте KeyCAPTCHA класс для PHP и сохраните его на Вашем веб-сервере. ВНИМАНИЕ: Данный файл содержит секретный ключ для Вашего сайта, поэтому используйте его только на http://avto-5.ru/ Листинг файла keycaptcha_avto-5_ru.php: <?php if ( !class_exists('KeyCAPTCHA_CLASS') ) { class KeyCAPTCHA_CLASS { private $c_kc_keyword = "accept"; private $p_kc_visitor_ip = ""; private $p_kc_session_id = ""; private $p_kc_web_server_sign = ""; private $p_kc_web_server_sign2 = ""; private $p_kc_js_code = "<!-- KeyCAPTCHA code (www.keycaptcha.com)--><script language='JavaScript'>var s_s_c_user_id = '16328';var s_s_c_session_id = '#KC_SESSION_ID#';var s_s_c_captcha_field_id = 'capcode';var s_s_c_submit_button_id = 'postbut';var s_s_c_web_server_sign = '#KC_WSIGN#';var s_s_c_web_server_sign2 = '#KC_WSIGN2#';</script><script language=JavaScript src='http://backs.keycaptcha.com/swfs/cap.js'></script><!-- end of KeyCAPTCHA code-->"; private $p_kc_private_key = "twUWObwYjruSdcpgrlWiFEYBA"; public function get_web_server_sign($use_visitor_ip = 0) { return md5($this->p_kc_session_id . (($use_visitor_ip) ? ($this->p_kc_visitor_ip) "")) . $this->p_kc_private_key); } function __construct($a_private_key='', $a_js_code='') { if ( $a_private_key != '' ) { $this->p_kc_private_key = $a_private_key; } if ( $a_js_code != '' ) { $this->p_kc_js_code = $a_js_code; } $this->p_kc_session_id = uniqid() . '-3.4.0.001'; $this->p_kc_visitor_ip = $_SERVER["REMOTE_ADDR"]; } function http_get($path) { $arr = parse_url($path); $host = $arr['host']; $page = $arr['path']; if ( $page=='' ) { $page='/'; } if ( isset( $arr['query'] ) ) { $page.='?'.$arr['query']; } $errno = 0; $errstr = ''; $fp = fsockopen ($host, 80, $errno, $errstr, 30); if (!$fp){ return ""; } $request = "GET $page HTTP/1.0\r\n"; $request .= "Host: $host\r\n"; $request .= "Connection: close\r\n"; $request .= "Cache-Control: no-store, no-cache\r\n"; $request .= "Pragma: no-cache\r\n"; $request .= "User-Agent: KeyCAPTCHA\r\n"; $request .= "\r\n"; fwrite ($fp,$request); $out = ''; while (!feof($fp)) $out .= fgets($fp, 250); fclose($fp); $ov = explode("close\r\n\r\n", $out); return $ov[1]; } public function check_result($response) { $kc_vars = explode("|", $response); if ( count( $kc_vars ) < 4 ) { return false; } if ($kc_vars[0] == md5($this->c_kc_keyword . $kc_vars[1] . $this->p_kc_private_key . $kc_vars[2])) { if (stripos($kc_vars[2], "http://") !== 0) { $kc_current_time = time(); $kc_var_time = split('[/ :]', $kc_vars[2]); $kc_submit_time = gmmktime($kc_var_time[3], $kc_var_time[4], $kc_var_time[5], $kc_var_time[1], $kc_var_time[2], $kc_var_time[0]); if (($kc_current_time - $kc_submit_time) < 15) { return true; } } else { if ($this->http_get($kc_vars[2]) == "1") { return true; } } } return false; } public function render_js () { if ( isset($_SERVER['HTTPS']) && ( $_SERVER['HTTPS'] == 'on' ) ) { $this->p_kc_js_code = str_replace ("http://","https://", $this->p_kc_js_code); } $this->p_kc_js_code = str_replace ("#KC_SESSION_ID#", $this->p_kc_session_id, $this->p_kc_js_code); $this->p_kc_js_code = str_replace ("#KC_WSIGN#", $this->get_web_server_sign(1), $this->p_kc_js_code); $this->p_kc_js_code = str_replace ("#KC_WSIGN2#", $this->get_web_server_sign(), $this->p_kc_js_code); return $this->p_kc_js_code; } } } ?> 2. Если Ваш хостер запрещает исходящие соединение с сервера, скачайте скрипт получения времени и сохраните его в корень Вашего веб-сайта. После чего в настройках сайта на www.keycaptcha.com выключите флаг "Разрешить исходящие запросы" и укажите URL для обращения к скрипту получения времени. Листинг файла kc-gettime.php: <?php echo (gmdate("Y/m/d H:i:s",time())); ?> 3. Добавьте скрытое поле в защищаемую форму: <input type="hidden" name="capcode" id="capcode" value="false" /> 4. Добавьте атрибут id="postbut" к элементу управления формы, который отвечает за отправку формы. Например: <input type="submit" value="Save" id="postbut" class="button" /> 5. Добавьте следующий PHP код в функцию генерации страницы на Вашем веб-сервере: if (!class_exists('KeyCAPTCHA_CLASS')) { // измените путь '/home/path_to_keycaptcha_file/' на реальный путь к keycaptcha_avto-5_ru.php include('/home/path_to_keycaptcha_file/keycaptcha_avto-5_ru.php'); } $kc_o = new KeyCAPTCHA_CLASS(); echo $kc_o->render_js(); 6. Добавьте следующий код в функцию обработки формы: if (!class_exists('KeyCAPTCHA_CLASS')) { // измените путь '/home/path_to_keycaptcha_file/' на реальный путь к keycaptcha_avto-5_ru.php include('/home/path_to_keycaptcha_file/keycaptcha_avto-5_ru.php'); } $kc_o = new KeyCAPTCHA_CLASS(); if ($kc_o->check_result($_POST['capcode'])) { // Пользователь правильно решил задачу // Добавьте свой код, который будет сохранять данные формы } else { // Пользователь неверно решил задачу // Добавьте свой код, который будет формировать сообщение об ошибке } Прошу разобраться профи в DLE Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 094 Опубликовано: 21 сентября 2011 Рассказать Опубликовано: 21 сентября 2011 Сайт с установленной демо версией avto-5.ru Необходимо интегрировать сервис KeyCAPTCHA вместо обычной капчи. На демоверсии вы точно ничего не интегрируете. В демоверсии исходный код скрипта DLE закрыт и его нельзя отредактировать Цитата Ссылка на сообщение Поделиться на других сайтах
NtX 10 Опубликовано: 9 марта 2012 Рассказать Опубликовано: 9 марта 2012 Тема-то померла? Дело даже не в деньгах, а в том, что этот сервис сверхэффективен против ботов. На одном ресурсе они у меня даже как-то начали проходить вопрос/ответ. Поставил кейкапчу и сразу полегчало) Цитата Ссылка на сообщение Поделиться на других сайтах
DeeMon 73 Опубликовано: 21 марта 2012 Рассказать Опубликовано: 21 марта 2012 Кстати оригинально она выглядит, вроде просто в то же время боты уже не пройдут, только ручками. Кто то реализовал уже? Цитата Ссылка на сообщение Поделиться на других сайтах
Dezon 0 Опубликовано: 30 сентября 2012 Рассказать Опубликовано: 30 сентября 2012 Будет ли KeyCAPTCHA на DLE? Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 094 Опубликовано: 30 сентября 2012 Рассказать Опубликовано: 30 сентября 2012 Будет ли KeyCAPTCHA на DLE? нет 1 Цитата Ссылка на сообщение Поделиться на других сайтах
Dezon 0 Опубликовано: 3 октября 2012 Рассказать Опубликовано: 3 октября 2012 Сегодня зашёл на сайт keycaptcha.ru и там появилась версия для DLE 9.6-9.7 поставил себе всё работает. Будет ли KeyCAPTCHA на DLE? нет Спасибо, за достоверную информацию Цитата Ссылка на сообщение Поделиться на других сайтах
DeeMon 73 Опубликовано: 7 октября 2012 Рассказать Опубликовано: 7 октября 2012 Да, появился кстати, хорошая штука. Кому интересно он тут https://www.keycaptcha.ru/dle-captcha/ 1 Цитата Ссылка на сообщение Поделиться на других сайтах
viktor6 1 Опубликовано: 28 декабря 2012 Рассказать Опубликовано: 28 декабря 2012 Будет ли KeyCAPTCHA на DLE? нет А можно узнать почему не будет? 1 Цитата Ссылка на сообщение Поделиться на других сайтах
Dezon 0 Опубликовано: 30 декабря 2012 Рассказать Опубликовано: 30 декабря 2012 А можно узнать почему не будет? Она есть уже давно. https://www.keycaptcha.ru/dle-captcha/ Цитата Ссылка на сообщение Поделиться на других сайтах
Fillosoff 1 Опубликовано: 10 февраля 2013 Рассказать Опубликовано: 10 февраля 2013 Нужна keycaptcha для DLE 8.0 Кто может помочь? Цитата Ссылка на сообщение Поделиться на других сайтах
DeeMon 73 Опубликовано: 10 февраля 2013 Рассказать Опубликовано: 10 февраля 2013 Нужна keycaptcha для DLE 8.0 А её разработчки не желают помочь? Цитата Ссылка на сообщение Поделиться на других сайтах
MiXa 5 Опубликовано: 12 февраля 2013 Рассказать Опубликовано: 12 февраля 2013 Тех. поддержка заявила, что все сайты на DLE, большей частью сателлиты с ссылками на софт, и интереса для них не представляет. Фраза позабавила. После нее я точно НИКОГДА не буду иметь дело с такими мегакрутыми перцами... Цитата Ссылка на сообщение Поделиться на других сайтах
Fillosoff 1 Опубликовано: 17 февраля 2013 Рассказать Опубликовано: 17 февраля 2013 Нужна keycaptcha для DLE 8.0 А её разработчки не желают помочь? Вы знаете - помогли!! На письмо в поддержку кейкапчи мне ответил Андрей. сказал, что для DLE 8.0 подходит кейкапча от 9.6, модуль для которой есть на сайте. единственное, надо заменить 1 файл. выслал мне его письмом и дописал инструкцию - какие небольшие изменения в код внести, чтобы в админке управлять можно было. Очень и очень благодарна ему! Работает почти все. не работает только при отсылке личных сообщений и при отсылке писем с сайта. но думаю, что мы еще пообщаемся и я все поправлю. Но есть и одна непонятная проблема, но это я отдельным постом напишу - задам вопрос на форуме, т.к. здесь не совсем по теме. Еще раз хочу выразить огромную благодарность поддержке Кейкапчи в лице Андрея за практически мгновенное реагирование и помощь! Цитата Ссылка на сообщение Поделиться на других сайтах
дед 0 Опубликовано: 19 февраля 2013 Рассказать Опубликовано: 19 февраля 2013 KeyCAPTCHA собирает информацию на сайтах которые установили её код http://www.bestauction.ru/showpost.php?p=159420&postcount=2 Цитата Ссылка на сообщение Поделиться на других сайтах
YuriBtr 58 Опубликовано: 6 мая 2013 Рассказать Опубликовано: 6 мая 2013 Скажите пожалуйста, кто нибудь тестировал KeyCAPTCHA на мобильной версии сайта? Можно ли её собирать например в Опере мини, IE или других броузерах на смартфонах? Спасибо! Цитата Ссылка на сообщение Поделиться на других сайтах
KeyCAPTCHA 1 Опубликовано: 18 июня 2013 Рассказать Опубликовано: 18 июня 2013 Добрый день, Форумчане! @дед: Профессор Преображенский говорил: «...не читайте до обеда советских газет.». Контент и favicon однозначно определили цитату. @YuriBtr: KeyCAPTCHA прекрасно работает на мобильных устройствах во всех современных браузерах. @celsoft: В связи с участившимися обращениями в нашу службу поддержки пользователей DLE с вопросами о помощи в интеграции их сайтов с KeyCAPTCHA, предлагаю взаимовыгодное сотрудничество, а именно: добавить интеграцию нашего сервиса в базовую поставку Вашего продукта, как это уже сделали, например, разработчики IP.Board. Сотрудничество считаю взаимовыгодным, т.к. Ваши пользователи перестанут жаловаться на спам и отнимать дополнительное время у Вашей технической поддержки. P.S. Если возникнут вопросы по интеграции, всегда буду рад ответить. С уважением, Владыкин Максим Один из основателей KeyCAPTCHA 1 Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.