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

[Решено] фантастика (!), но описание товара не выводится


Recommended Posts

Имеем ocstore 1.5.5.1.2

Файлы неизмененные. т. е. дефолтный движок с дефолтной схемой.

 

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

Но в back-end-е описание не выводится.

Вместо него выводится производитель если он есть, либо ничего.

 

И так для всех товаров. Хоть вновь, хоть давносозданных.

 

И все дело не в файлах, а в базе данных.  она формировалась отдельно в процессе обновления со старого движка.

Т. к. беру БД другую, и все показывается как надо.

 

А с моей фантастической БД происходит что-то не то. Либо я чего то не знаю.

 

В контроллере продукта

$product_info['description']

эта переменная почему то выводит производителя.  И это при неизменном коде движка.

С этой необычной БД приходится работать, т. к. это есть резервная копия магазина.

$product_info['manufacturer']

$product_info['description']  выводит тоже самое, что и переменная $product_info['manufacturer'] с небольшой лишь разницей. В первом случае производитель обернут в тег <p>.

 

Не пойму как такое может быть?

Где то в БД есть какие либо настройки, отвечающие за вывод описания?

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

MDdVrW8.png

 

ошибка возникает на уровне модели.

а далее уже по цепочке передается в контроллер >> вид

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

Ээ.. Так чем помочь то? :)

 

Так надобно чтобы описание товаров отображалось.

Удаляю все товары. Создаю один.

 

Но описания в front-end-е нет. а в админке все в порядке.

 

Пытаюсь понять как такое может быть.

Ошибка возникает на уровне модели.  Происходит "кривая" выборка. А в админке выборка идет без проблем.

Предполагаю, что может быть звезды данные в БД так выстроились, что выборка получается такая странная.

 

query выдает все поля товара верно кроме описания.

грешу на ошибку в коде движка, это как вариант.

 

Тут бы понять куда копнуть. Понять каким путем отловить ошибку.

 

Таблицы в БД все исправны.

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

читал-читал - так и не увидел: а в БД-то что в описании продукта? там нормальное описание?

если да - чистите кеш, vqmod и тд

 

файлы контроллера и модели сравните с чистыми из дистрибутива - через WinMerge или подобное

 

вообще - в первую очередь сам запрос в модели смотрите

Змінено користувачем AlexDW
Надіслати
Поділитися на інших сайтах

была чистая установка движка или апрейд?

vqmod-ов никаких нет?

 

Была чистая установка движка сначала.

на следующем шаге заливалась БД от ocstore 1.0.1 (или что то вроде того, там сложно понять версию).

И запускался апдейт БД до 1.5.5.1. 

Все прошло вроде бы успешно по отчетом апдейтера.

 

vqmod нету. если говорить про файлы "модулей" xml.  есть только собственно сам vqmod и менеджер к нему, т. е. стандартные два файла xml.

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

читал-читал - так и не увидел: а в БД-то что в описании продукта? там нормальное описание?

если да - чистите кеш, vqmod и тд

 

 

В самой БД нормальное описание если смотреть через phpmyadmin.  И оно же без проблем отображается в админке.

Все кеши чистил. Это не помогает.

 

Например, чисто ради эксперимента, меняю в контроллере

$product_info['description']

на

$product_info['meta_description']

И замечательно выводится meta_description на страничке в блоке для описания.

И любое другое поле или параметр выводится.

 

файлы контроллера и модели сравните с чистыми из дистрибутива - через WinMerge или подобное

 

 

все файлы неизмененные, такие же как в дистрибутиве.

 

Здесь что-то в самой БД чудесное зарыто.

Если залить БД от дефолтного магазина при неизменных фалах движка, то описание выводится без проблем.

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

есть мысль, что у вас в процессе апдейтов в какой-то таблице (скорей всего в manufacturer - раз она лезет) добавилось лишнее поле description

и при запросе в модели оно затирает description от товара

 

попробуйте сравнить структуру таблиц измененной БД с оригинальной от 1.5.5.1.2

Змінено користувачем AlexDW
Надіслати
Поділитися на інших сайтах

есть мысль, что у вас в процессе апдейтов в какой-то таблице (скорей всего в manufacturer - раз она лезет) добавилось лишнее поле description

и при запросе в модели оно затирает description от товара

 

попробуйте сравнить структуру таблиц измененной БД с оригинальной от 1.5.5.1.2

 

Вы оказались совершенно правы. Спасибо! Все в точности так и оказалось. Вопрос решен благодаря вашей точной подсказке.

 

Но лишнее поле не должно было бы вызывать такой проблемы. Это я уже о коде движка говорю. Т. е. код мог бы быть и почище.

В админке не вызывает же.

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

Так код-то предназначен для этой версии БД - невозможно все предусмотреть ;)

например, что у вас лишнее поле там, где его быть не должно :ugeek:

Змінено користувачем AlexDW
Надіслати
Поділитися на інших сайтах

...

на следующем шаге заливалась БД от ocstore 1.0.1 (или что то вроде того, там сложно понять версию).

И запускался апдейт БД до 1.5.5.1. 

...

Ну, вот и ответ, разве нет?

upd. пока написал свою месагу уже разобрались.

Змінено користувачем destreser
Надіслати
Поділитися на інших сайтах


с кодом все в порядке.

как уже разобрались - не надо "брать файлы от 155х, а бд от 101".

в админке, если ты до сих пор не разобрался, данные из таблицы "product_description" выбираются отдельным запросом, а не вместе с данными из таблицы "product".

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

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

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

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

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

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

Вхід

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

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

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

Important Information

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