Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Проблемы с установкой или работой phpBB 3.0.x? Получите помощь здесь!
С 1 января 2017 года phpBB Group прекращает поддержку phpBB версии 3.0.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.0 до 1 июля 2017 года.
Подробнее: Окончание поддержки phpBB 3.0.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
sunny_lotos
phpBB 1.0.0
Сообщения: 5
Стаж: 8 лет 3 месяца
Благодарил (а): 1 раз

Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Сообщение sunny_lotos »

Здравствуйте, уважаемые форумчане! Прошу поделиться опытом или советом, как добавить к стандартным анти-спам модулям reCaptcha 2.0 на phpbb 3.0.14. Здесь на форуме обсуждалось, что для 3.1.х есть расширение на phpbb.com, но для 3.0 официального мода нет. Удалось найти такой мод для 3.0.х (возможно, кому-то будет полезен): https://github.com/vinny/recaptcha-2-phpbbmod

У меня стоит стиль subsilver 2, а в этом моде template только для prosilver, поэтому возникает ошибка:
template->_tpl_load_file(): File ./styles/subsilver2/template/captcha_recaptcha_new.html does not exist or is empty
Буду благодарна за наводку на информацию, как можно модифицировать prosilver template для того, чтобы он подошел subsilver 2. Или за иные способы внедрения новой рекапчи на phpbb 3.0.

Заранее спасибо!
Аватара пользователя
владимир1983
phpBB 3.2.6
Сообщения: 5954
Стаж: 13 лет 11 месяцев
Откуда: Сергиев Посад
Благодарил (а): 374 раза
Поблагодарили: 727 раз
Контактная информация:

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Сообщение владимир1983 »

А если положить файл /styles/prosilver/template/captcha_recaptcha_new.html > /styles/subsilver2/template/ то что?
За ваши деньги решу ваши проблемы. Стучи в ЛС.
Нет человека - нет проблемы. (c)
sunny_lotos
phpBB 1.0.0
Сообщения: 5
Стаж: 8 лет 3 месяца
Благодарил (а): 1 раз

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Сообщение sunny_lotos »

Большое спасибо! Копирование просильверского шаблона помогло! Единственная проблема - рекапча отображается сверху над формой регистрации. Могли бы Вы меня сориентировать, куда смотреть, чтобы поместить рекапчу вниз формы регистрации?
Содержимое файла рекапчи /styles/subsilver2/template/captcha_recaptcha_new.html 
<!-- IF S_TYPE == 1 -->
<div class="panel">
<div class="inner"><span class="corners-top"><span></span></span>

<h3>{L_CONFIRMATION}</h3>
<p>{L_CONFIRM_EXPLAIN}</p>

<fieldset class="fields2">
<!-- ENDIF -->

<!-- IF S_RECAPTCHA_NEW_AVAILABLE -->
<dl>
<dt><label>{L_CONFIRM_CODE}</label>:<br /><span>{L_RECAPTCHA_NEW_EXPLAIN}</span></dt>
<dd>
<script src="https://www.google.com/recaptcha/api.js ... "></script>
<div class="g-recaptcha" data-sitekey="{RECAPTCHA_NEW_PUBKEY}"></div>
</dd>
</dl>
<!-- ELSE -->
{L_RECAPTCHA_NEW_NOT_AVAILABLE}
<!-- ENDIF -->

<!-- IF S_TYPE == 1 -->
</fieldset>
<span class="corners-bottom"><span></span></span></div>
</div>
<!-- ENDIF -->
Содержимое файла формы регистрации /styles/subsilver2/template/ucp_register.html 
<!-- INCLUDE overall_header.html -->

<script type="text/javascript">
// <![CDATA[
/**
* Change language
*/
function change_language(lang_iso)
{
document.forms['register'].change_lang.value = lang_iso;
document.forms['register'].submit.click();
}

<!-- IF CAPTCHA_TEMPLATE and S_CONFIRM_REFRESH -->
onload_functions.push('apply_onkeypress_event()');
<!-- ENDIF -->

// ]]>
</script>

<form method="post" action="{S_UCP_ACTION}" id="register">

<div class="panel">
<div class="inner"><span class="corners-top"><span></span></span>

<h2>{SITENAME} - {L_REGISTRATION}</h2>

<fieldset class="fields2">
<!-- IF ERROR --><dl><dd class="error">{ERROR}</dd></dl><!-- ENDIF -->
<!-- IF L_REG_COND -->
<dl><dd><strong>{L_REG_COND}</strong></dd></dl>
<!-- ENDIF -->
<dl>
<dt><label for="username">{L_USERNAME}:</label><br /><span>{L_USERNAME_EXPLAIN}</span></dt>
<dd><input type="text" tabindex="1" name="username" id="username" size="25" value="{USERNAME}" class="inputbox autowidth" title="{L_USERNAME}" /></dd>
</dl>
<dl>
<dt><label for="email">{L_EMAIL_ADDRESS}:</label></dt>
<dd><input type="text" tabindex="2" name="email" id="email" size="25" maxlength="100" value="{EMAIL}" class="inputbox autowidth" title="{L_EMAIL_ADDRESS}" /></dd>
</dl>
<dl>
<dt><label for="email_confirm">{L_CONFIRM_EMAIL}:</label></dt>
<dd><input type="text" tabindex="3" name="email_confirm" id="email_confirm" size="25" maxlength="100" value="{EMAIL_CONFIRM}" class="inputbox autowidth" title="{L_CONFIRM_EMAIL}" /></dd>
</dl>
<dl>
<dt><label for="new_password">{L_PASSWORD}:</label><br /><span>{L_PASSWORD_EXPLAIN}</span></dt>
<dd><input type="password" tabindex="4" name="new_password" id="new_password" size="25" value="{PASSWORD}" class="inputbox autowidth" title="{L_NEW_PASSWORD}" /></dd>
</dl>
<dl>
<dt><label for="password_confirm">{L_CONFIRM_PASSWORD}:</label></dt>
<dd><input type="password" tabindex="5" name="password_confirm" id="password_confirm" size="25" value="{PASSWORD_CONFIRM}" class="inputbox autowidth" title="{L_CONFIRM_PASSWORD}" /></dd>
</dl>

<hr />

<dl>
<dt><label for="lang">{L_LANGUAGE}:</label></dt>
<dd><select name="lang" id="lang" onchange="change_language(this.value); return false;" tabindex="6" title="{L_LANGUAGE}">{S_LANG_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="tz">{L_TIMEZONE}:</label></dt>
<dd><select name="tz" id="tz" tabindex="7" class="autowidth">{S_TZ_OPTIONS}</select></dd>
</dl>

<!-- IF .profile_fields -->
<dl><dd><strong>{L_ITEMS_REQUIRED}</strong></dd></dl>

<!-- BEGIN profile_fields -->
<dl>
<dt><label<!-- IF profile_fields.FIELD_ID --> for="{profile_fields.FIELD_ID}"<!-- ENDIF -->>{profile_fields.LANG_NAME}:<!-- IF profile_fields.S_REQUIRED --> *<!-- ENDIF --></label>
<!-- IF profile_fields.LANG_EXPLAIN --><br /><span>{profile_fields.LANG_EXPLAIN}</span><!-- ENDIF -->
<!-- IF profile_fields.ERROR --><br /><span class="error">{profile_fields.ERROR}</span><!-- ENDIF --></dt>
<dd>{profile_fields.FIELD}</dd>
</dl>
<!-- END profile_fields -->
<!-- ENDIF -->

</fieldset>
<span class="corners-bottom"><span></span></span></div>
</div>
<!-- IF CAPTCHA_TEMPLATE -->
<!-- DEFINE $CAPTCHA_TAB_INDEX = 8 -->
<!-- INCLUDE {CAPTCHA_TEMPLATE} -->
<!-- ENDIF -->

<!-- IF S_COPPA -->


<div class="panel">
<div class="inner"><span class="corners-top"><span></span></span>

<h4>{L_COPPA_COMPLIANCE}</h4>

<p>{L_COPPA_EXPLAIN}</p>
<span class="corners-bottom"><span></span></span></div>
</div>
<!-- ENDIF -->

<div class="panel">
<div class="inner"><span class="corners-top"><span></span></span>

<fieldset class="submit-buttons">
{S_HIDDEN_FIELDS}
<input type="reset" value="{L_RESET}" name="reset" class="button2" />&nbsp;
<input type="submit" tabindex="9" name="submit" id="submit" value="{L_SUBMIT}" class="button1 default-submit-action" />
{S_FORM_TOKEN}
</fieldset>

<span class="corners-bottom"><span></span></span></div>
</div>
</form>

<!-- INCLUDE overall_footer.html -->
Аватара пользователя
cianid
phpBB 1.4.3
Сообщения: 92
Стаж: 17 лет 10 месяцев
Благодарил (а): 9 раз
Поблагодарили: 2 раза

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Сообщение cianid »

У меня после установки возникла проблема. При входе в меню "Средства против спам ботов" выдается ошибка:

Код: Выделить всё

Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /var/www/.../forum/includes/captcha/plugins/phpbb_recaptcha_new_plugin.php on line 294

Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /var/www/.../forum/includes/captcha/plugins/phpbb_recaptcha_new_plugin.php on line 294

Parse error: syntax error, unexpected T_STRING in /var/www/prizolovy/data/www/.../forum/includes/captcha/plugins/phpbb_recaptcha_new_plugin.php on line 294
Как это можно исправить?
Baiker
phpBB 1.4.0
Сообщения: 33
Стаж: 13 лет 7 месяцев
Благодарил (а): 11 раз
Поблагодарили: 1 раз
Контактная информация:

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Сообщение Baiker »

Установил reCaptcha 2.0 на 3.0.14. Пошел следующим путем:
1. Скачал мод NOT a Robot Recaptcha V2 отсюда
2. Установил данный мод на форум с помощью AutoMOD.
3. Перевел captcha_recaptcha_v2.php и закинул его в language/ru (скачать мой перевод можно здесь).
4. Profit! :)
Erlang
phpBB 2.0.15
Сообщения: 1033
Стаж: 19 лет 8 месяцев
Откуда: Москва
Благодарил (а): 293 раза
Поблагодарили: 6 раз
Контактная информация:

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Сообщение Erlang »

Здравствуйте.
Поставил через Автомод в 1-й раз.

А где теперь искать и как настраивать Рекаптчу от Гугла?

Отправлено спустя 18 минут 55 секунд:
Ой!
Разобрался. Просто называется Recaptcha и её нужно настроить.

Проверим...
С уважением,
Сергей
Аватара пользователя
apollion
phpBB 2.0.22
Сообщения: 1382
Стаж: 10 лет
Откуда: Юг Руси
Благодарил (а): 50 раз
Поблагодарили: 99 раз
Контактная информация:

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Сообщение apollion »

И зачем она нужна если есть антибот?
DieAleX
phpBB 1.0.0
Сообщения: 1
Стаж: 10 лет 4 месяца

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Сообщение DieAleX »

phpbb 3.0.14
ставлю captcha 2.0 и после этого в разделе средства против спамботов - пустая страница

если ставлю через automod то после удаления captcha2.0 раздел средства против спамботов снова доступен

поставил вручную через install_recaptcha_new.php раздел также пустой
удаление через install_recaptcha_new.php не помог
заработало вновь только после удаления всех файлов

куда копать?
Erlang
phpBB 2.0.15
Сообщения: 1033
Стаж: 19 лет 8 месяцев
Откуда: Москва
Благодарил (а): 293 раза
Поблагодарили: 6 раз
Контактная информация:

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Сообщение Erlang »

Похоже и этот Мод сломали, стали сыпаться регистрации спамеров.
С уважением,
Сергей
Erlang
phpBB 2.0.15
Сообщения: 1033
Стаж: 19 лет 8 месяцев
Откуда: Москва
Благодарил (а): 293 раза
Поблагодарили: 6 раз
Контактная информация:

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Сообщение Erlang »

Baiker писал(а): 3. Перевел captcha_recaptcha_v2.php и закинул его в language/ru (скачать мой перевод можно здесь).
Можно перезалить?
Сейчас файл не доступен :(
С уважением,
Сергей
Аватара пользователя
LONER
phpBB 3.0.0 RC1
Сообщения: 1486
Стаж: 8 лет 2 месяца
Благодарил (а): 164 раза
Поблагодарили: 247 раз

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Сообщение LONER »

Erlang писал(а): Можно перезалить?
RU.zip
(2.1 КБ) 315 скачиваний
Правильно заданный вопрос и описание проблемы - 70% их решения...
Baiker
phpBB 1.4.0
Сообщения: 33
Стаж: 13 лет 7 месяцев
Благодарил (а): 11 раз
Поблагодарили: 1 раз
Контактная информация:

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Сообщение Baiker »

По просьбе желающих выкладываю свой перевод.
captcha_recaptcha.php

Код: Выделить всё

<?php
/**
*
* recaptcha [Russian]
*
* @package language
* @version $Id: captcha_recaptcha.php 9933 2009-08-06 09:12:21Z marshalrusty $
* @copyright (c) 2009 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/

/**
* DO NOT CHANGE
*/
if (!defined('IN_PHPBB'))
{
	exit;
}

if (empty($lang) || !is_array($lang))
{
	$lang = array();
}

// DEVELOPERS PLEASE NOTE
//
// All language files should use UTF-8 as their encoding and the files must not contain a BOM.
//
// Placeholders can now contain order information, e.g. instead of
// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows
// translators to re-order the output of data while ensuring it remains correct
//
// You do not need this where single placeholders are used, e.g. 'Message %d' is fine
// equally where a string contains only two placeholders which are used to wrap text
// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine

$lang = array_merge($lang, array(
	'RECAPTCHA_LANG'				=> 'ru',
	'RECAPTCHA_NOT_AVAILABLE'		=> 'Для использования reCaptcha необходимо создать учётную запись на сайте <a href="http://www.google.com/recaptcha">www.google.com/recaptcha</a>.',
	'CAPTCHA_RECAPTCHA'				=> 'reCaptcha',
	'RECAPTCHA_INCORRECT'			=> 'Неверный код визуального подтверждения',

	'RECAPTCHA_PUBLIC'				=> 'Публичный ключ reCaptcha (Public Key)',
	'RECAPTCHA_PUBLIC_EXPLAIN'		=> 'Ваш публичный ключ reCaptcha. Ключи можно получить на сайте <a href="http://www.google.com/recaptcha">www.google.com/recaptcha</a>.',
	'RECAPTCHA_PRIVATE'				=> 'Закрытый ключ reCaptcha (Private Key)',
	'RECAPTCHA_PRIVATE_EXPLAIN'		=> 'Ваш закрытый ключ reCaptcha. Ключи можно получить на сайте <a href="http://www.google.com/recaptcha">www.google.com/recaptcha</a>.',

	'RECAPTCHA_EXPLAIN'				=> 'В целях предотвращения автоматической отправки форм, введите оба отображённых слова в текстовое поле ниже.',
));

?>

captcha_recaptcha_v2.php

Код: Выделить всё

<?php
/**
*
* recaptcha [Russian]
*
* @package language
* @version $Id$
* @copyright (c) 2009 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/

/**
* DO NOT CHANGE
*/
if (!defined('IN_PHPBB'))
{
	exit;
}

if (empty($lang) || !is_array($lang))
{
	$lang = array();
}

// DEVELOPERS PLEASE NOTE
//
// All language files should use UTF-8 as their encoding and the files must not contain a BOM.
//
// Placeholders can now contain order information, e.g. instead of
// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows
// translators to re-order the output of data while ensuring it remains correct
//
// You do not need this where single placeholders are used, e.g. 'Message %d' is fine
// equally where a string contains only two placeholders which are used to wrap text
// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine

$lang = array_merge($lang, array(
	'RECAPTCHA_LANG'				=> 'ru',
	'RECAPTCHA_NOT_AVAILABLE'		=> 'Для использования reCaptcha необходимо создать учётную запись на сайте <a href="http://www.google.com/recaptcha">www.google.com/recaptcha</a>.',
	'CAPTCHA_RECAPTCHA_v2'			=> 'reCaptcha v2 NOT Robot',
	'RECAPTCHA_INCORRECT'			=> 'Пожалуйста подтвердите что вы НЕ робот.',

	'RECAPTCHA_PUBLIC'				=> 'Публичный ключ reCaptcha (Public Key)',
	'RECAPTCHA_PUBLIC_EXPLAIN'		=> 'Ваш публичный ключ reCaptcha. Ключи можно получить на сайте <a href="http://www.google.com/recaptcha">www.google.com/recaptcha</a>.',
	'RECAPTCHA_PRIVATE'				=> 'Закрытый ключ reCaptcha (Private Key)',
	'RECAPTCHA_PRIVATE_EXPLAIN'		=> 'Ваш закрытый ключ reCaptcha. Ключи можно получить на сайте <a href="http://www.google.com/recaptcha">www.google.com/recaptcha</a>.',

	'RECAPTCHA_EXPLAIN'				=> 'В целях предотвращения автоматической отправки форм, вам нужно будет поставить галочку рядом с надписью "Я не робот".',
	'GV2_CONFIRM_EXPLAIN'		=> 'В целях предотвращения автоматической отправки форм, поставьте галочку рядом с надписью "Я не робот".',
	'GV2_CONFIRM_CODE'			=> 'Подтвердите что вы НЕ робот',
));

?>
Erlang
phpBB 2.0.15
Сообщения: 1033
Стаж: 19 лет 8 месяцев
Откуда: Москва
Благодарил (а): 293 раза
Поблагодарили: 6 раз
Контактная информация:

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Сообщение Erlang »

А для 3.1.х есть аналогичное расширение?
С уважением,
Сергей
Erlang
phpBB 2.0.15
Сообщения: 1033
Стаж: 19 лет 8 месяцев
Откуда: Москва
Благодарил (а): 293 раза
Поблагодарили: 6 раз
Контактная информация:

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Сообщение Erlang »

Erlang писал(а): А для 3.1.х есть аналогичное расширение?
Re: recaptcha 2.0
С уважением,
Сергей
Закрыто

Вернуться в «Поддержка phpBB 3.0.х»