MOD Login Security - ошибки "Undefined index" в логе форума

Автор Dia, 17 апреля 2012, 02:29:15

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Dia

Здравствуйте!
Форум версии 1.1.16
Данный мод установлен вручную, как и куча иных модов и 1 тема оформления. И вроде даже всё работает, но в логе ошибок форума то и дело появляется вот такое сообщение:

Цитироватьhttp://www.raduga.asia/forum/index.php?action=profile2
Применить фильтр: Показать ошибки только с теми сообщениями
8: Undefined index: allowedips
Файл: /var/www/forum/Sources/Profile.php
Строка: 585

Кусок кода из файла Profile.php:

// Login Security
$allowedips = '';
if ($modSettings['ls_allow_ip_security'])
{
global $sourcedir;
require_once($sourcedir . '/Subs-LoginSecurity.php');
UpdateAllowedIPs($memID, $_REQUEST['allowedips']);
}


// End Login Security

585-я строка это "global $sourcedir;"

Т.к. мод ставился вручную - дважды перепроверил правильность вносимых изменений в файлы, в соответствии с описанием для установки, всё совпадает. А ошибка всё равно есть.

На данном форуме упоминаний про решение такой проблемы поиском не нашёл, на официальном англоязычном что-то подобное написано, но я не смог понять, о чём там вообще...

Что делать? :)

Bugo

В той теме дается совет, как избавиться от ошибки. Нужно заменить ваш кусок кода предлагаемым, и проблема исчезнет.

Dia

Плюсом к тому, что я не понимаю тамошний английский язык, у меня ведь ошибка в другом файле. Там в "default/Profile.template.php", а у меня в "Sources/Profile.php".
То, что надо дописать что-то - это я примерно понял, но что и куда... к сожалению, в программировании я не разбираюсь. Bugo, не могли бы Вы мне подсказать, что мне поможет в решении данного вопроса?

Bugo

Если в Profile.php есть такой блок:

if ($modSettings['ls_allow_ip_security'])
{
global $sourcedir;
require_once($sourcedir . '/Subs-LoginSecurity.php');
UpdateAllowedIPs($memID, $_REQUEST['allowedips']);
}

замените его на

if ($modSettings['ls_allow_ip_security'] && isset($_REQUEST['allowedips']))
{
global $sourcedir;
require_once($sourcedir . '/Subs-LoginSecurity.php');
UpdateAllowedIPs($memID, $_REQUEST['allowedips']);
}

Dia

Благодарю за ответ, Bugo!
В файле profile.php такого блока, естественно, нет, т.к. он по ссылке значится в файле Profile.template.php.
Но я в profile.php в строку:
      if ($modSettings['ls_allow_ip_security'])
добавил то, что отличает эти коды, так что получилось:
      if ($modSettings['ls_allow_ip_security'] && isset($_REQUEST['allowedips']))

И в итоге ошибка из лога исчезла!