Категории
[FAQ] Часто задаваемые вопросы и ответы
Проблемы и решения
Ошибки и исправления
Общие вопросы
Расширения
Установка и обновление
Модули
Шаблоны
Локализация интерфейса
Коммерческие предложения
Учимся бизнесу
Бизнес книги
Поисковая оптимизация (SEO)
Магазины на ShopOS
Хостинг для ShopOS
Предложения и пожелания
Курилка
|
Яндекс выдает такую ошибку. Что делать?
В поиске выдало страницу с товаром. При открытии такая надпись: "08/09/2010 21:09:42 | 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'and ptf.products_extra_fields_value<>'' and (pef.languages_id='0' or pef.languag' at line 5 | SELECT pef.products_extra_fields_status as status, pef.products_extra_fields_name as name, ptf.products_extra_fields_value as value FROM os_products_extra_fields pef LEFT JOIN os_products_to_products_extra_fields ptf ON ptf.products_extra_fields_id=pef.products_extra_fields_id"
Переводчик выдал: 08.09.2010 21:09:42 | 1064 - у Вас есть ошибка в Вашем синтаксисе SQL; проверьте руководство, которое соответствует Вашей версии сервера MySQL для правильного синтаксиса, чтобы использовать рядом 'и ptf.products_extra_fields_value <>'' и (pef.languages_id = '0' или pef.languag' в линии 5 | ВЫБЕРИТЕ pef.products_extra_fields_status как статус, pef.products_extra_fields_name как имя, ptf.products_extra_fields_value как ценность ОТ os_products_extra_fields pef ОСТАВЛЕННОЕ СОЕДИНЕНИЕ os_products_to_products_extra_fields ptf НА ptf.products_extra_fields_id=pef.products_extra_fields_id"
Что с этим делать?Что и где нужно заменить? Может ли быть это связано с введением ЧПУ?
Сейчас начал проверять. Он так ругается на удаленные товары. Я так понимаю при удалении товаров таких ошибок в поиске не избежать? Или есть выход?
версия какая?
версия какая?
Версия 2.5.2
В файле product_info.php оператор
$extra_fields_query = osDBquery(" SELECT pef.products_extra_fields_status as status, pef.products_extra_fields_name as name, ptf.products_extra_fields_value as value FROM ". TABLE_PRODUCTS_EXTRA_FIELDS ." pef LEFT JOIN ". TABLE_PRODUCTS_TO_PRODUCTS_EXTRA_FIELDS ." ptf ON ptf.products_extra_fields_id=pef.products_extra_fields_id WHERE ptf.products_id=". $product->data['products_id'] ." and ptf.products_extra_fields_value<>'' and (pef.languages_id='0' or pef.languages_id='".$_SESSION['languages_id']."') ORDER BY products_extra_fields_order");
надо бы заменить на
$extra_fields_query = osDBquery(" SELECT pef.products_extra_fields_status as status, pef.products_extra_fields_name as name, ptf.products_extra_fields_value as value FROM ". TABLE_PRODUCTS_EXTRA_FIELDS ." pef LEFT JOIN ". TABLE_PRODUCTS_TO_PRODUCTS_EXTRA_FIELDS ." ptf ON ptf.products_extra_fields_id=pef.products_extra_fields_id WHERE ptf.products_id='". $product->data['products_id'] ."' and ptf.products_extra_fields_value<>'' and (pef.languages_id='0' or pef.languages_id='".$_SESSION['languages_id']."') ORDER BY products_extra_fields_order");
Должна исчезнуть ошибка MySQL. А проблема с тем, что поисковики ссылаются на удаленные ранее товары, конечно, останется.
Для таких ссылок отдельную страницу следовало бы создать.
У меня такой строчки в данном файле просто нет
У меня есть, файл modules/product_info.php , строки 211-217, архив скачан со страницы http://www.shopos.ru/downloads/, версия 2.5.2
Проверьте еще. Если не найдете, выложите здесь свой файл.
всё спасибо! нашёл где это не в том немного месте смотрел! А ещё писали, что для этого специальную страницу можно создать. Подскажите как её сделать плиз!
Это в двух словах не рассказать. Смотрите коды скриптов в магазине, там образцов много.
Источник
|