0 Пользователей и 1 Гость просматривают эту тему.
  • 27 Ответов
  • 1844 Просмотров
*

Jozheg

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
  • Владимир
Приветствую уважаемое сообщество!

Прошу совета. Ситуация следующая. Есть сайт кузовного автосервиса mskautopaint.ru. Сайт создавался весьма давно, сейчас работает на Joomla 2.5.28 - насколько я понял, система устаревшая. На главной странице выдаётся сообщение об ошибке MySQL "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 ') ORDER BY c.lft, a.title, a.created DESC LIMIT 0, 1' at line 13 SQL=SELECT a.id, a.title..." с длинным текстом запроса. Остальные страницы сайта эту ошибку не выдают. Указания на файл с ошибкой нет. Вероятно, запрос генерируется на лету. Есть только "...at line 13 ...", но о том, где эта строка живёт - ни полслова.

Пробовал обновить Joomla до 3 версии - сайт слетел. Подозреваю, шаблон Technik, на котором построен сайт, не поддерживает новую версию. Вернул старую. Согласно панели управления сайта база данных в актуальном состоянии, предупреждений нет.

Техподдержка хостинга сообщила, что ошибку выдаёт плагин jat3, и посоветовала его отключить. Это JA T3 Framework, необходимый для работы шаблона. Отключение этого плагина отключает сайт и даёт сообщение о необходимости этого плагина. Ещё с этим плагином как-то связан компонент К2.

Подскажите, что сделать, чтобы хотя бы сообщение об ошибке MySQL на главной странице не выдавалось? По сути своей этот сайт - просто визитка на пяток страниц с кратким описанием компании и услуг, ничего особенного от него не требуется, но привести в аккуратный вид надо.
Также буду весьма признателен и за советы, где искать корень этой ошибки.

Спасибо!
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Re: Ошибка You have an error in your SQL syntax
« Ответ #1 : 22.05.2020, 18:38:41 »
Ищите где формируется запрос к БД и показывайте код. Иначе никак. Если верить саппорту в плагине  jat3 видимо.
*

Jozheg

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
  • Владимир
Re: Ошибка You have an error in your SQL syntax
« Ответ #2 : 22.05.2020, 18:56:56 »
Ищите где формируется запрос к БД
С какой стороны к этому поиску подступиться? Насколько я понимаю, это не через админку сайта делать надо, а через хостинг. Там я нашёл каталог с плагином jat3, в нём много файлов .php и не только. Где-то в этих файлах надо искать? Задача не из простых.
В сообщении об ошибке есть имена таблиц, из которых идёт выборка, и имена таблиц, в которые идёт выдача. Это должно помочь - осталось понять, как.
*

voland

  • Легенда
  • 11030
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Ошибка You have an error in your SQL syntax
« Ответ #3 : 22.05.2020, 18:58:07 »
С какой стороны к этому поиску подступиться? Насколько я понимаю, это не через админку сайта делать надо, а через хостинг. Там я нашёл каталог с плагином jat3, в нём много файлов .php и не только. Где-то в этих файлах надо искать? Задача не из простых.
В сообщении об ошибке есть имена таблиц, из которых идёт выборка, и имена таблиц, в которые идёт выдача. Это должно помочь - осталось понять, как.
Хотел помочь, но вы даже запрос с ошибкой не написали
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Re: Ошибка You have an error in your SQL syntax
« Ответ #4 : 22.05.2020, 19:00:01 »
SELECT a.id, a.title..." с длинным текстом запроса
Угу. Вот это SELECT a.id, a.title... нужно целиком.
*

Jozheg

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
  • Владимир
Re: Ошибка You have an error in your SQL syntax
« Ответ #5 : 22.05.2020, 19:03:37 »
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 ') ORDER BY c.lft, a.title, a.created DESC LIMIT 0, 1' at line 13 SQL=SELECT a.id, a.title, a.alias, a.title_alias, a.introtext, a.language, a.checked_out, a.checked_out_time, a.catid, a.created, a.created_by, a.created_by_alias, CASE WHEN a.modified = 0 THEN a.created ELSE a.modified END as modified, a.modified_by, uam.name as modified_by_name,CASE WHEN a.publish_up = 0 THEN a.created ELSE a.publish_up END as publish_up,a.publish_down, a.images, a.urls, a.attribs, a.metadata, a.metakey, a.metadesc, a.access, a.hits, a.xreference, a.featured, LENGTH(a.fulltext) AS readmore,CASE WHEN badcats.id is not null THEN 0 ELSE a.state END AS state,c.title AS category_title, c.path AS category_route, c.access AS category_access, c.alias AS category_alias,CASE WHEN a.created_by_alias > ' ' THEN a.created_by_alias ELSE ua.name END AS author,ua.email AS author_email,( SELECT MAX(contact.id) AS id FROM jmt_contact_details AS contact WHERE contact.published = 1 AND contact.user_id = a.created_by) as contactid,parent.title as parent_title, parent.id as parent_id, parent.path as parent_route, parent.alias as parent_alias,ROUND(v.rating_sum / v.rating_count, 0) AS rating, v.rating_count as rating_count,c.published, CASE WHEN badcats.id is null THEN c.published ELSE 0 END AS parents_published FROM jmt_content AS a LEFT JOIN jmt_categories AS c ON c.id = a.catid LEFT JOIN jmt_users AS ua ON ua.id = a.created_by LEFT JOIN jmt_users AS uam ON uam.id = a.modified_by LEFT JOIN jmt_categories as parent ON parent.id = c.parent_id LEFT JOIN jmt_content_rating AS v ON a.id = v.content_id LEFT OUTER JOIN (SELECT cat.id as id FROM jmt_categories AS cat JOIN jmt_categories AS parent ON cat.lft BETWEEN parent.lft AND parent.rgt WHERE parent.extension = 'com_content' AND parent.published != 1 GROUP BY cat.id ) AS badcats ON badcats.id = c.id INNER JOIN jmt_content_frontpage AS fp ON fp.content_id = a.id WHERE a.access IN (1) AND c.access IN (1) AND CASE WHEN badcats.id is null THEN a.state ELSE 0 END = 1 AND (a.publish_up = '0000-00-00 00:00:00' OR a.publish_up <= '2020-05-22 14:14:46') AND (a.publish_down = '0000-00-00 00:00:00' OR a.publish_down >= '2020-05-22 14:14:46') AND a.catid IN () ORDER BY c.lft, a.title, a.created DESC LIMIT 0, 1

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 ') ORDER BY c.lft, a.title, a.created DESC' at line 13 SQL=SELECT a.id, a.title, a.alias, a.title_alias, a.introtext, a.language, a.checked_out, a.checked_out_time, a.catid, a.created, a.created_by, a.created_by_alias, CASE WHEN a.modified = 0 THEN a.created ELSE a.modified END as modified, a.modified_by, uam.name as modified_by_name,CASE WHEN a.publish_up = 0 THEN a.created ELSE a.publish_up END as publish_up,a.publish_down, a.images, a.urls, a.attribs, a.metadata, a.metakey, a.metadesc, a.access, a.hits, a.xreference, a.featured, LENGTH(a.fulltext) AS readmore,CASE WHEN badcats.id is not null THEN 0 ELSE a.state END AS state,c.title AS category_title, c.path AS category_route, c.access AS category_access, c.alias AS category_alias,CASE WHEN a.created_by_alias > ' ' THEN a.created_by_alias ELSE ua.name END AS author,ua.email AS author_email,( SELECT MAX(contact.id) AS id FROM jmt_contact_details AS contact WHERE contact.published = 1 AND contact.user_id = a.created_by) as contactid,parent.title as parent_title, parent.id as parent_id, parent.path as parent_route, parent.alias as parent_alias,ROUND(v.rating_sum / v.rating_count, 0) AS rating, v.rating_count as rating_count,c.published, CASE WHEN badcats.id is null THEN c.published ELSE 0 END AS parents_published FROM jmt_content AS a LEFT JOIN jmt_categories AS c ON c.id = a.catid LEFT JOIN jmt_users AS ua ON ua.id = a.created_by LEFT JOIN jmt_users AS uam ON uam.id = a.modified_by LEFT JOIN jmt_categories as parent ON parent.id = c.parent_id LEFT JOIN jmt_content_rating AS v ON a.id = v.content_id LEFT OUTER JOIN (SELECT cat.id as id FROM jmt_categories AS cat JOIN jmt_categories AS parent ON cat.lft BETWEEN parent.lft AND parent.rgt WHERE parent.extension = 'com_content' AND parent.published != 1 GROUP BY cat.id ) AS badcats ON badcats.id = c.id INNER JOIN jmt_content_frontpage AS fp ON fp.content_id = a.id WHERE a.access IN (1) AND c.access IN (1) AND CASE WHEN badcats.id is null THEN a.state ELSE 0 END = 1 AND (a.publish_up = '0000-00-00 00:00:00' OR a.publish_up <= '2020-05-22 14:14:46') AND (a.publish_down = '0000-00-00 00:00:00' OR a.publish_down >= '2020-05-22 14:14:46') AND a.catid IN () ORDER BY c.lft, a.title, a.created DESC
« Последнее редактирование: 22.05.2020, 19:07:59 от Jozheg »
*

Jozheg

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
  • Владимир
Re: Ошибка You have an error in your SQL syntax
« Ответ #6 : 22.05.2020, 19:08:29 »
На две части текст я разделил - для удобства чтения. На сайте он выдан единым блоком.
*

voland

  • Легенда
  • 11030
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Ошибка You have an error in your SQL syntax
« Ответ #7 : 22.05.2020, 19:27:15 »
На две части текст я разделил - для удобства чтения. На сайте он выдан единым блоком.
ОШибка на строке 13, но при копировании на форум разбиение на строки потерялось ))
Впрочем, видно что, скорее всего дело в пустых категориях AND a.catid IN () тут

Скорее всего в админке какой-то модуль вывода статей\новостей или чего-то подобного и в его настройках не указаны категории, из которых надо выводить.
Укажите ему категории или выключите его
*

Jozheg

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
  • Владимир
Re: Ошибка You have an error in your SQL syntax
« Ответ #8 : 22.05.2020, 19:31:09 »
ОШибка на строке 13, но при копировании на форум разбиение на строки потерялось ))
Не было никакой разбивки в сообщении об ошибке.  ^-^
Лучше всего полюбоваться на это безобразие в оригинале: http://mskautopaint.ru/
*

Jozheg

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
  • Владимир
Re: Ошибка You have an error in your SQL syntax
« Ответ #9 : 22.05.2020, 19:33:57 »
Скорее всего в админке какой-то модуль вывода статей\новостей или чего-то подобного и в его настройках не указаны категории, из которых надо выводить. Укажите ему категории или выключите его
Как вариант. Однако я всю админку прошерстил, отключал всякое - результата не было. Кроме полного отключения сайта :) Поэтому я многое повключал обратно - на всякий случай. Но эти эксперименты я продолжу как потенциально способные помочь.

Хотя никаких статей и новостей там быть по идее не должно. Этот сайт всегда работал только визиткой, без форумов и внешних пользователей. Впрочем, разработчик сайта мог туда и лишнего прикрутить, может оттуда и проблема пошла.
*

Jozheg

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
  • Владимир
Re: Ошибка You have an error in your SQL syntax
« Ответ #10 : 22.05.2020, 19:37:57 »
скорее всего дело в пустых категориях AND a.catid IN () тут
Есть такая мысль.
А ещё с запятыми в запросе бардак: то с пробелами после них, то без - это может влиять на выполнение запроса?
*

voland

  • Легенда
  • 11030
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Ошибка You have an error in your SQL syntax
« Ответ #11 : 22.05.2020, 19:45:34 »
Не было никакой разбивки в сообщении об ошибке.  ^-^
Лучше всего полюбоваться на это безобразие в оригинале: http://mskautopaint.ru/
Была!
Просто надо смотреть исходный код, тут видны разделения на строки
*

Jozheg

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
  • Владимир
Re: Ошибка You have an error in your SQL syntax
« Ответ #12 : 22.05.2020, 19:49:07 »
Просто надо смотреть исходный код, тут видны разделения на строки
Спасибо! Ещё одна подсказка в трудном поиске.

На вашем скриншоте в тринадцатых строках как раз a.catid фигурирует.
« Последнее редактирование: 22.05.2020, 19:54:02 от Jozheg »
*

Jozheg

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
  • Владимир
Re: Ошибка You have an error in your SQL syntax
« Ответ #13 : 22.05.2020, 22:06:56 »
А есть ли способ отключить вывод сообщения об ошибке посетителям сайта? Пусть он там себе молча не находит какую-нибудь категорию и молча не показывает какие-нибудь новости - и ладненько, и чудненько, меня это на первых порах вполне устроит. Всё, что нужно, он сейчас отображает и делает. Главное, чтобы он не кричал о своих проблемах каждому посетителю красной кляксой посреди главной страницы, чтобы не портил картинку. Пусть в логи пишет. А я уж дальше вникну, неторопясь найду, где что не так, и исправлю.
Если подскажете, где какой конфиг подправить для этого, или там галочку хитрую в настройках - буду весьма благодарен, после чего погружусь в мануалы, дабы не тревожить больше людей глупыми вопросами   ^-^
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Ошибка You have an error in your SQL syntax
« Ответ #14 : 22.05.2020, 22:56:02 »
ТС, в админку можете войти?
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Jozheg

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
  • Владимир
Re: Ошибка You have an error in your SQL syntax
« Ответ #15 : 22.05.2020, 23:06:38 »
ТС, в админку можете войти?
Да, есть доступ и к админке, и к хостингу.
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Ошибка You have an error in your SQL syntax
« Ответ #16 : 22.05.2020, 23:16:04 »
Дайте в личке мне доступ в админку.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Jozheg

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
  • Владимир
Re: Ошибка You have an error in your SQL syntax
« Ответ #17 : 22.05.2020, 23:23:40 »
Дайте в личке мне доступ в админку.
Не могу отправлять сообщения, похоже, недостаточно стажа на форуме. Может teamviewer'ом каким попробовать? Или так, на словах? Я в целом-то понятливый...
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Ошибка You have an error in your SQL syntax
« Ответ #18 : 22.05.2020, 23:25:30 »
Зайдите в Меню->Все пункты меню
Не будь паразитом, сделай что-нибудь самостоятельно!
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Ошибка You have an error in your SQL syntax
« Ответ #19 : 22.05.2020, 23:28:42 »
У вас должен быть пункт меню, который выводит статьи в определенных категориях. Так вот, в нем ни одна категория не выбрана.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Jozheg

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
  • Владимир
Re: Ошибка You have an error in your SQL syntax
« Ответ #20 : 22.05.2020, 23:31:29 »
Зашёл.
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Ошибка You have an error in your SQL syntax
« Ответ #21 : 22.05.2020, 23:33:53 »
Ох блин, у вас еще и К2. Прочитайте мой предыдущий пост и попробуйте сами устранить проблему. Если не получится, то будем думать дальше.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Jozheg

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
  • Владимир
Re: Ошибка You have an error in your SQL syntax
« Ответ #22 : 22.05.2020, 23:41:01 »
Прочитайте мой предыдущий пост и попробуйте сами устранить проблему.
Постараюсь. Вот ещё пара скриншотов.




Насколько я понимаю, проблема возникает в материале Frontpage, который находится в категории Featured content, при том, что все остальные материалы в категории Uncategorised. Хотя вроде и та, и та опубликованы.

Снимаю с публикации Frontpage - и на главной никаких перемен. Она отображается, всё так же, с ошибкой...
« Последнее редактирование: 22.05.2020, 23:45:43 от Jozheg »
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Ошибка You have an error in your SQL syntax
« Ответ #23 : 22.05.2020, 23:51:11 »
-
« Последнее редактирование: 22.05.2020, 23:54:37 от robert »
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Jozheg

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
  • Владимир
Re: Ошибка You have an error in your SQL syntax
« Ответ #24 : 22.05.2020, 23:51:24 »
Я его одолел! Ура!
Дело было в категориях в главном меню. Поменял категорию - заработало!
Спасибо за подсказки, друзья! Была бы возможность - наплюсовал бы всем откликнувшимся.

Пункт меню "Главная" был в категории Featured content (Избранное). Перевёл в простые "Материалы" - и всё заработало!
*

Jozheg

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
  • Владимир
Re: Ошибка You have an error in your SQL syntax
« Ответ #25 : 22.05.2020, 23:58:27 »


В верхнем левом поле "Тип пункта меню" было неправильное значение, как оказалось...

Теперь спокойно могу изучать тему глубже. Очень уж интересно, как эти шайтан-машины работают, и как ими повелевать  ;D

Ещё раз всем большое спасибо!
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Ошибка You have an error in your SQL syntax
« Ответ #26 : 23.05.2020, 00:00:25 »
 *DRINK*
Но такого не должно было быть. Надо PR сделать, чтобы добавили проверку на наличие категорий.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Jozheg

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
  • Владимир
Re: Ошибка You have an error in your SQL syntax
« Ответ #27 : 23.05.2020, 00:23:37 »
*DRINK* Но такого не должно было быть. Надо PR сделать, чтобы добавили проверку на наличие категорий.
Сайт был создан лет десять назад на шаблоне, обновлявшемся последний раз в 2012 году, работает на Joomla 2.5.28. Может сегодня уже и поправили этот момент.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

500 - Обнаружена ошибка

Автор CheCat

Ответов: 4
Просмотров: 910
Последний ответ 19.12.2020, 07:39:07
от gartes
Ошибка recaptha

Автор Bolat19721

Ответов: 13
Просмотров: 1075
Последний ответ 11.10.2020, 09:44:38
от Bolat19721
ПОМОГИТЕ!!! Ошибка 500 в версии 2.5.19 при оформлении заказа

Автор promwood

Ответов: 10
Просмотров: 1348
Последний ответ 16.09.2020, 08:35:26
от AlexB
"Ошибка 404 - Материал нее найден" как заходишь на сайт

Автор Lepby

Ответов: 17
Просмотров: 39091
Последний ответ 11.06.2020, 08:48:10
от sound
Ошибка Call to a member function data() on null

Автор Дмитрий3838

Ответов: 0
Просмотров: 792
Последний ответ 11.03.2020, 14:29:56
от Дмитрий3838