Перейти к содержанию

Рекомендуемые сообщения

При редактировании модуля в админке выдает 

 

Fatal error: Cannot use object of type stdClass as array in /home//www/admin/model/module/modulename.php on line 2496

 

В файле модели 2496 строка модуля следующая..

 

if ($result && isset($result['num_rows'], $result['rows'])) {

 

Вот полный кусок кода 

private function _fetch($query) {
		$queryName = 'modulename_sql_'.md5($query);

		$result = $this->cache->get($queryName);

		if ($result && isset($result['num_rows'], $result['rows'])) {
			$result = (object)$result;
		} else {
			$result = $this->db->query($query);

			$this->cache->set($queryName, $result);
		}
		return $result;
	}

Подскажите в чем может быть проблема, знатоки кодинга (

Изменено пользователем zomo

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Точнее и не сказать...

 

a6a2340a435c.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Странный код, как не посмотри.

 

Сама ошибка из-за того, что в $result объект, а его пытаются использовать как массив (надо так: $result->num_rows), но интересней откуда берётся объект, если кеш должен возвращать массив.

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это какой-то треш а не код

Попытка "сериализовать" объект

 

Название модуля в студию

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Богом забытый забугорнй модуль для подбора авто запчастей 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это конечно бред

 

замените

$result['num_rows'], $result['rows']

 

на

$result->num_rows,

$result->rows

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

private function _fetch($query) {

$queryName = 'modulename_sql_'.md5($query);

$result = $this->cache->get($queryName);

if ($result->num_rows) {

$result = (object)$result;

} else {

$result = $this->db->query($query);

$this->cache->set($queryName, $result);

}

return $result;

}

Изменено пользователем ArtenPitov
  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо большое решено, мучался  долго а оно как всегда просто)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×