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

При включении ЧПУ появляется ошибка Notice: Error No: 1054

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

Добрый день,

при включении ЧПУ (OpenCart 1.5.3.1) появляется ошибка при переходе в карточку товара - 

 

Notice: Error: Unknown column 'p.main_category_id' in 'field list'
Error No: 1054
SELECT IFNULL(p.main_category_id, p2c.category_id) AS category_id FROM product AS p JOIN product_to_category AS p2c USING (product_id) WHERE p.product_id = '160' LIMIT 1 in /public_html/system/database/mysql.php on line 49

 

При этом url категорий стали красивые и правильные.

Для ЧПУ было сделано:

htaccess.txt переименован на .htaccess;

системный кэш почищен (не один раз);

в админке включено чпу (тип чпу seo pro).

 

Понимаю, что не хватает колонки p.main_category_id в БД, но не пойму в какую таблицу надо добавить эту колонку и как. Пробовал добавлять ее в таблицу product и product_to_category, не помогло.

 

Буду благодарен за помощь в решении проблемы.

 

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


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

 

p.main_category_id

Таблица p

product AS p

 

хм... че за бред?

 

1. Неверный запрос.

 

SELECT IFNULL(p2с.main_category_id, p.category_id)

 

Кажись так должно быть

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


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

Таблица p

product AS p

 

хм... че за бред?

 

1. Неверный запрос.

 

SELECT IFNULL(p2с.main_category_id, p.category_id)

 

Кажись так должно быть

 

Попробовал в catalog/model/tool/seo_url.php запрос изменить на Ваш, но ошибка все равно остается, и не только в товарах, но теперь и в категориях тоже.

Изначально запрос имеет вот такой вид:

$query = $this->db->query("SELECT IFNULL(p.main_category_id, p2c.category_id) AS category_id FROM " . DB_PREFIX . "product AS p JOIN " . DB_PREFIX . "product_to_category AS p2c USING (product_id) WHERE p.product_id = '" . (int)$product_id . "' LIMIT 1");

 

Может, вообще не в том файле правлю, но в других файлах подобного запроса нет.

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


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

Я вообще не понимаю, откуда  у вас эти запросы

 

 

SELECT IFNULL(p2с.main_category_id, p.category_id)

 

 

Что за привычка не думать, а ждать готового - ведь ЯСНО показан была предыдущая ошибка

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


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

eugenlife, у тебя там вообще ппц.

пишешь

в админке включено чпу (тип чпу seo pro).

а лезешь править какой-то

catalog/model/tool/seo_url.php

который вообще неизвестно откуда у тебя.

возьми catalog/controller/common/seo_pro.php из архива ocstore_15512 и проверь.

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


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

eugenlife, у тебя там вообще ппц.

пишешь

а лезешь править какой-то

который вообще неизвестно откуда у тебя.

возьми catalog/controller/common/seo_pro.php из архива ocstore_15512 и проверь.

 

Я понимаю, что если включен seo_pro, то он и должен отвечать за url, но этот запрос, который выдает в ошибке, нашел только в упомянутом seo_url.php, потому и пробовал рассмотреть именно этот запрос. Попробовал удалить этот файл и тогда появляется ошибка другого характера

 

Notice: Error: Could not load model tool/seo_url! in /public_html/vqmod/vqcache/vq2-system_engine_loader.php on line 48

 

То есть, файл ненужный, а проблему создает. 

 

Магазин не мой, помогаю знакомому ЧПУ настроить, кто и что до меня там делал не знаю. Ранее, когда настраивал ЧПУ на opencart, такой проблемы никогда не было.

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


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

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

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

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

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

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

Войти

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

Войти

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

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

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.