Робот пытался зарегистрироваться через captcha, fatal error, настройка batrik

Аватар пользователя alexo alexo 24 февраля 2015 в 15:43

Робот подал заявку на регистрацию, несмотря на то, что включена captcha, математика. (Или это был человек, но адрес почты у него не похож на настоящий)
Проверить правильно ли все было включено в модуле не удалось, потому что следующей страницей после просмотра профиля была:

"Fatal error: Cannot redeclare bartik_preprocess_html() (previously declared in ...sites/all/themes/mybartik/template.php:6) in ... themes/bartik/template.php on line 27"

(тема мною была нетронута, только скопирована (batrik) и поменян файл .info)

Сейчас сайт заново залит на всякий случай полностью.

Мог ли и робот вызвать такую ошибку в теме? это совпадение?

После этого (сейчас) стоит картинка искажение среднее -3, шум -2.

бывало ли у Вас, что они проходят через математику?

Комментарии

Аватар пользователя EvgenySorokin EvgenySorokin 24 февраля 2015 в 15:50

Если дублируете тему, то нужно не только info переименовать, но и в файлах темы заменить "bartik" на имя вашей темы.
То есть в теме "newbartik" (например) в template.php не должно быть функций просто "bartik".

Через notepad++ "найти и заменить" проще всего менять.

Аватар пользователя Chyvakoff Chyvakoff 24 февраля 2015 в 15:59

Я как-то делал робота, который в онлайн игру играл. Прокачивал перса, шмотки собирал... А вы тут математическая капча...

Аватар пользователя alexo alexo 24 февраля 2015 в 16:35

Garin33, спасибо.
"В файлах темы" вы имеете ввиду все шаблоны?
Я смотрю в template php и в шаблонах, через ctrl + F и вручную, не нахожу сейчас там функции batrik.

На локальном сервере fatal error нет,
но там пишет

Notice: Undefined variable: hide_site_name в функции include() (строка 99 в файле ... sites\all\themes\mybartik\templates\page.tpl.php).
Notice: Undefined variable: hide_site_name в функции include() (строка 103 в файле ... sites\all\themes\mybartik\templates\page.tpl.php).

Вот текст начиная с 98 строки по 119
<?php if ($site_name || $site_slogan): ?>
div id="name-and-slogan"<?php if ($hide_site_name && $hide_site_slogan) { print ' class="element-invisible"'; } ?>>

<?php if ($site_name): ?>
<?php if ($title): ?>
div id="site-name"<?php if ($hide_site_name) { print ' class="element-invisible"'; } ?>>

" title="<?php print t('Home'); ?>" rel="home"><?php print $site_name; ?>

<?php else: /* Use h1 when the content title is empty */ ?>
h1 id="site-name"<?php if ($hide_site_name) { print ' class="element-invisible"'; } ?>>
" title="<?php print t('Home'); ?>" rel="home"><?php print $site_name; ?>

<?php endif; ?>
<?php endif; ?>

<?php if ($site_slogan): ?>
div id="site-slogan"<?php if ($hide_site_slogan) { print ' class="element-invisible"'; } ?>>
<?php print $site_slogan; ?>

<?php endif; ?>

99 и 10 строки выделены жирным
Перед div и h1 стираю <, чтобы они проходили в видимом виде

Аватар пользователя alexo alexo 24 февраля 2015 в 16:43

Все же на локальном сервере тоже слетел сайт, значит это было совпадение с роботом

сначала выдавалась ошибка, потом денвер начал закрываться (комментарий, что слишком много ошибок в php),
и после попытки сначала restart, потом run выдалась fatal error та же самая

Аватар пользователя alexo alexo 24 февраля 2015 в 18:10

Garin33, спасибо большое.
Да, у меня были ошибки.
Теперь работает

Ошибки были в : файле .info не было исправлено package = core на

package = Custom

иначе она отмечена как тема ядра, и в названии темы (при поиске в файле template), поэтому они не исправлялись.

Аватар пользователя alexo alexo 26 февраля 2015 в 16:53

Опять появились ошибки
Undefined variable: hide_site_name в функции include() (строка 99 в файле ... page.tpl.php).
Undefined variable: hide_site_name в функции include() (строка 103 в файле ... page.tpl.php).
Notice: Undefined variable: My_region в функции include() (строка 179 в файле K:\...sites\all\themes\mytheme\templates\page.tpl.php).

Имя сайта и слога нормально отображаются.

Блоки в регион не добавляются. Но при добавлении блока регион есть в выпадающем списке (не добавляется после нажатия "сохранить блоки").

Первые две ошибки устраняются выключением имени сайта и слогана в оформлении. Но при включении снова появляются.
Вторая ошибка исчезает после удаления <?php print $my_region1; ?> из page.tpl.php
(регион добавлен после хлебных крошек

<?php if ($breadcrumb): ?>
<?php print $breadcrumb; ?>
<?php endif; ?>

<?php print $my_region1; ?>

<?php if ($page['sidebar_first']): ?>)

Bartik выбрана как "простая" тема, так как нужно было сделать дизайн похожий на нее с небольшими изменениями.
Ошибки неожиданны. Почти ничего не делалось. Только был добавлен один регион. Первые две ошибки были и до его добавления.

Аватар пользователя alexo alexo 27 февраля 2015 в 0:59

Garin33, спасибо большое!
Ошибка была в
"<?php print $myregion; ?>"
пишу теперь
<?php print render($page['myregion']); ?>

Первые ошибки (Undefined variable:hide_site_name in include ...) есть ответ на
https://www.drupal.org/node/1021114
нужно почистить кэш.
Мне не помогло. После обновления страницы они снова появлялись. После замены файлов page.tpl.php и temlate.php
и обновления кэша они исчезли.