добрый день. Решил обновить сайт, было ocstore 3.0.2.0, шаблон ultrastore 2.1.3, PHP 7.2.34, стало ocstore 3.0.3.7, шаблон ultrastore 2.9, PHP 7.3.33. Ошибок не появлялось, после переноса БД с рабочего сайта стала появляться ошибка PHP Warning: Illegal string offset 'quantity' in /var/www/u0670627/data/www/mydomen.ru/catalog/model/octemplates/stickers/oct_stickers.php on line 58
при открытии любой карточки товара
в коде модели
if ((isset($oct_stickers['stickers']['sold']['status']) && $oct_stickers['stickers']['sold']['status']) && (isset($oct_stickers['stickers']['sold']['auto']) && $oct_stickers['stickers']['sold']['auto'] == 'on')) {
if ((int)$result['quantity'] == (int)$oct_stickers['stickers']['sold']['count']) {
$oct_stickers_data['stickers']['stickers_sold'] = [
'title' => (isset($oct_stickers['stickers']['sold']['title'][(int)$this->config->get('config_language_id')]) && !empty($oct_stickers['stickers']['sold']['title'][(int)$this->config->get('config_language_id')])) ? $oct_stickers['stickers']['sold']['title'][(int)$this->config->get('config_language_id')] : $this->language->get('entry_sticker_sold'),
'sort' => $oct_stickers['stickers']['sold']['sort']
];
}
}
не подскажете где я мог накосячить?
ошибка Illegal string offset
-
- Сообщения: 3
- Зарегистрирован: 06.02.2024
- Tom
- Разработчик дополнений
- Сообщения: 171
- Зарегистрирован: 10.03.2022
- Откуда: Казахстан - Алматы
- Поблагодарил: 10 раз
- Спасибо: 74 раз
Re: ошибка Illegal string offset
Накосячили здесь, пока писали сообщение. Нужно было это время затратить на написание этого вопроса автору шаблона у которого он был куплен.
-
- Сообщения: 3
- Зарегистрирован: 06.02.2024
Re: ошибка Illegal string offset
дело в том что авторы шаблона прекратили поддержку *.ru в связи с известными событиями, при выводе переменной $result через print_r массив отображается корректно, так же как на рабочем сайте
Последний раз редактировалось diamante777 07 фев 2024, 11:30, всего редактировалось 1 раз.
- Tom
- Разработчик дополнений
- Сообщения: 171
- Зарегистрирован: 10.03.2022
- Откуда: Казахстан - Алматы
- Поблагодарил: 10 раз
- Спасибо: 74 раз
Re: ошибка Illegal string offset
Проблема в том, что код ожидает, что переменная $result['quantity'] будет числом, но она каким-то образом содержит нечто другое - возможно, текст вместо числа. Это скорее всего и вызывает ошибку.
Чтобы исправить это, нужно сделать так, чтобы переменная $result['quantity'] всегда содержала числовое значение.
Проверьте откуда берется значение $result['quantity'] и убедитьесь, что оно является числом.
Может у вас там текст затесался.
Чтобы исправить это, нужно сделать так, чтобы переменная $result['quantity'] всегда содержала числовое значение.
Проверьте откуда берется значение $result['quantity'] и убедитьесь, что оно является числом.
Может у вас там текст затесался.
-
- Сообщения: 27
- Зарегистрирован: 17.05.2022
- Откуда: Тюмень
- Спасибо: 12 раз
- Контактная информация:
Re: ошибка Illegal string offset
Тут, судя по тексту ошибки, в переменной $result оказывается строковое значение вместо массива.
-
- Сообщения: 3
- Зарегистрирован: 06.02.2024
Re: ошибка Illegal string offset
нашел какой модуль вызывает ошибку, осталось найти что он делает с этой переменной