Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Notice: Undefined variable


Recommended Posts

Возникает следующая ошибка в разделе товары при установке некоторых модулей, при этом модули все работаю корректно, но из за данной ошибки не отображаются товары 

Ощибка

Notice: Undefined variable: sql in /storage/modification/admin/model/catalog/product.php on line 371

код строчки

$sql .= " AND pd.name LIKE '" . $this->db->escape($data['filter_name']) . "%'";

 

использую опенкарт 3.0.2

Надіслати
Поділитися на інших сайтах

2 часа назад, yura88k сказал:

модули все работаю корректно, но из за данной ошибки не отображаются товары

 

Лол. А как же тогда не корректная работа выглядит? )

 

Посмотрите выше в коде есть ли вообще эта переменная $sql, откуда она берется.

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

Надіслати
Поділитися на інших сайтах

3 часа назад, yura88k сказал:

$sql .=

Конкатенация не может быть осуществлена, если переменная  не объявлена.

Объявите в самом начале

Цитата

$sql ="";

 

И но проблем.

Надіслати
Поділитися на інших сайтах

11 минут назад, esculapra сказал:

И но проблем.

 

ну там какбы идет приращение в строке ошибки, и к чему оно будет? 

Надіслати
Поділитися на інших сайтах

15 минут назад, Vetroff сказал:

ну там какбы идет приращение в строке ошибки, и к чему оно будет

Если переменная не указана, то склейка (конкатенация) невозможна! Просто в самом начале функции укажите переменную $sql ="";  и все.

Надіслати
Поділитися на інших сайтах

6 минут назад, esculapra сказал:

Если переменная не указана, то склейка (конкатенация) невозможна! Просто в самом начале функции укажите переменную $sql ="";  и все.

 

Смысл какой? Если дальше к строке пытается приклеиться запрос AND. К ничему.

Нужно разбираться куда пропало начало строки.

 

3 часа назад, yura88k сказал:

$sql .= " AND pd.name LIKE '" . $this->db->escape($data['filter_name']) . "%'";

 

 

  • +1 1
Надіслати
Поділитися на інших сайтах

38 минут назад, Vetroff сказал:

Нужно разбираться куда пропало начало строки

Ну так ищи. Походу там должно быть, типа

   public function getItems($data=array())
     {
          $sql="SELECT * FROM `".DB_PREFIX."profiler`";
     if(isset($data['start'])|| isset($data['limit']))
       {
       if($data['start'] < 0)
         {
           $data['start']=0;
         }
       if($data['limit'] < 1)
         {
           $data['limit']=20;
         }
         $sql.=" LIMIT ".(int)$data['start'].",".(int)$data['limit'];
       }
       $query=$this->db->query($sql);
     if($result=$query->rows)
       {
       return $query->rows;
       }
     return false;
     }

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.