исправить ошибку

Sysfaray

Гуру форума
Регистрация
7 Окт 2007
Сообщения
175
Реакции
88
64 строка:
Код:
                if (preg_match('/[0-9]+[,]+[0-9]/', $items[$item_num][$map_field])) {  $item_coordinates = $items[$item_num][$map_field]; }

102 строка:
Код:
if ($item[$map_field]) {
 

Вложения

  • screenshot.1.jpg
    screenshot.1.jpg
    234,5 KB · Просмотры: 10
  • widget.zip
    811 байт · Просмотры: 3
Ошибка гуглится на ура в том числе и по этому форуму.

Решение:
1) выключить вывод notice
2) добавить проверку на существование переменной:
PHP:
if (isset($items) && isset($item_num) && isset($map_field) && isset($items[$item_num])) {
 if (preg_match('/[0-9]+[,]+[0-9]/', $items[$item_num][$map_field])) {  $item_coordinates = $items[$item_num][$map_field]; }
}
 
Ошибка гуглится на ура в том числе и по этому форуму.

Решение:
1) выключить вывод notice
2) добавить проверку на существование переменной:
PHP:
if (isset($items) && isset($item_num) && isset($items[$item_num])) {
if (preg_match('/[0-9]+[,]+[0-9]/', $items[$item_num][$map_field])) {  $item_coordinates = $items[$item_num][$map_field]; }
}

PHP:
if (isset($items, $item_num, $map_field, $items[$item_num])) {
 
Спасибо , добрые человеки. Премного благодарен.

После исправления вылетела ещё одна ошибка:
Код:
E_NOTICE: Undefined variable: item_id   /system/controllers/content/widgets/random/widget.php (63)
  /system/controllers/content/widgets/random/widget.php (63) widgetContentRandom->run
    /system/core/core.php (713) widgetContentRandom->call_user_func_array
      /system/core/core.php (666) cmsCore->runWidge
 
Всё тоже самое перед использованием переменной item_id в 63 строке widget.php вставляй проверку, что переменная существует if (isset($item_id))
 
Код:
        $all_items = $model->getContentItems($ctype['name']);
        shuffle($all_items);
        $items = array_slice($all_items, $item_id, (int)$amount_items);
        if ($this->links !=''){ $this->links .= "\n"; }
        $this->links .= LANG_WD_CONTENT_RANDOM_REFRESH . '|#refresh" id="rnd_refresh_'.$this->id.'" onclick="icms.random.getNext('.$this->id.'); return false' ;

        if (!$items) { return false; }
       
        shuffle($items);
 
Назад
Сверху