Не работает запрос на вывод книг по выбранным магазинам. В чем может быть ошибка? - MySQL

Узнай цену своей работы

Формулировка задачи:

Имеются 3 таблицы: table_products - книги, shops - магазины, и shop_book - таблица, связывающая эти две. На моем сайте есть поиск по параметрам: цена, жанры и магазины. Запрос должен выводить книги, которые имеются в магазинах, которые пользователь отметил на сайте. В чем может быть ошибка запроса? Подскажите.
Листинг программы
  1. if ($_GET["genre"])
  2. {
  3. $check_genre = implode(',',$_GET["genre"]);
  4. }
  5. if ($_GET["name_shop"])
  6. {
  7. $check_shop = implode(',',$_GET["name_shop"]);
  8. }
  9. $start_price = (int)$_GET["start_price"]; /*int пропускает только цифры*/
  10. $end_price = (int)$_GET["end_price"];
  11. /*одно из 3 проверяется*/
  12. if (!empty($check_genre) OR !empty($end_price) OR !empty($check_shop))
  13. {/*а здесь уже точно, что выбрано (части запроса))*/
  14. if (!empty($check_genre)) $query_genre = " AND genre_id IN($check_genre)";
  15. if (!empty($end_price)) $query_price = " AND price BETWEEN $start_price AND $end_price";
  16. if (!empty($check_shop)) $query_shop = " shop_id IN($check_shop)";
  17. }
  18.  
  19. $result = mysql_query("SELECT * FROM (SELECT products_id FROM shop_book AS sb WHERE $query_shop JOIN table_products AS pr ON pr.products_id = sb.products_id) WHERE visible='1' $query_genre $query_price ORDER BY products_id DESC",$link);

Решение задачи: «Не работает запрос на вывод книг по выбранным магазинам. В чем может быть ошибка?»

textual
Листинг программы
  1. $result = mysql_query("SELECT shop_id, SUBSTRING(`name_shop`, 1, 28) AS `name_shop` FROM shops",$link);

Объяснение кода листинга программы

  1. Подключается библиотека MySQL.
  2. Формируется SQL-запрос с помощью функции mysql_query().
  3. В запросе используется функция SUBSTRING(), которая позволяет выбрать подстроку из поля name_shop длиной не более 28 символов.
  4. Результат запроса сохраняется в переменной $result.
  5. Полученный результат будет использоваться в дальнейшем для работы с данными.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.182 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы