Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 24.02.2018
Сообщений: 42

Вывод одного и того же результата при разных запросах

11.05.2020, 21:13. Показов 626. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
у меня выводится один и тот же результат при разных запросах, что может быть не так
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
if ($id_cat=1) 
    {   $strSQL1="SELECT 
ID_prod, image_prod,  Nameprod,
product.id_cat, name_categ, kol_vo, price, category.id_cat
    FROM product, category WHERE 
    category.id_cat=product.id_cat AND product.id_cat='1'";
    } 
if ($id_cat=2) 
    {
    $strSQL1="SELECT 
ID_prod, image_prod,  Nameprod,
product.id_cat, name_categ, kol_vo, price, category.id_cat
    FROM product, category WHERE 
    category.id_cat=product.id_cat AND category.id_cat='2'";
    } 
$result1=mysqli_query($conn,$strSQL1) or die("Не могу выполнить запрос2!");


Если ($id_cat=2) поставить "==" , то выводится ошибка mysqli_query(): Empty query in W:\domains\writewithzero.ru\show.php on line 21
Ошибка в этой строчке
Code
1
$result1=mysqli_query($conn,$strSQL1) or die("Не могу выполнить запрос2!");
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.05.2020, 21:13
Ответы с готовыми решениями:

Вывод одного и того же результата парсером
Вот сайт который я пытаюсь спарсить: https://www.olx.kz/kokshetau/q-Системный-блок/ Вот сам код: import requests from bs4 import...

2 разных действия при обработке одного и того же обработчика
Подскажите как можно реализовать такое : есть какой-то компонент ( например TButton ) , нужно сделать по первому нажатию на этот компонент...

lwjgl и баг(артефакты в разных местах при повторе одного и того же кода)
Всем доброго вечера. Недавно занимаюсь c lwjgl. Вот просто рисуя старым добрым способом от руки, заметил вот такую интересную вещь. Может...

6
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
11.05.2020, 21:58
PHP
1
2
3
4
5
6
7
$strSQL="SELECT 
ID_prod, image_prod,  Nameprod,
product.id_cat, name_categ, kol_vo, price, category.id_cat
    FROM product, category WHERE 
    category.id_cat=product.id_cat AND product.id_cat='" .$id_cat . "'";
 
$result1=mysqli_query($conn,$strSQL) or die("Не могу выполнить запрос2!");
0
81 / 49 / 34
Регистрация: 22.05.2018
Сообщений: 192
12.05.2020, 13:24
У Вас не разные запросы, а только один - первый
PHP
1
2
3
4
5
6
7
if ($id_cat=1) 
    {   $strSQL1="SELECT 
ID_prod, image_prod,  Nameprod,
product.id_cat, name_categ, kol_vo, price, category.id_cat
    FROM product, category WHERE 
    category.id_cat=product.id_cat AND product.id_cat='1'";
    }
Такие условия
PHP
1
$id_cat=1
Всегда будет true.

Попробуйте вот так:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
if ($id_cat == 1) {   
 
    $strSQL1 = "SELECT ID_prod, image_prod,  Nameprod, product.id_cat, name_categ, kol_vo, price, category.id_cat
                FROM product, category 
                WHERE category.id_cat = product.id_cat 
                AND   product.id_cat  = 1";
    } 
 
if ($id_cat == 2) {
 
    $strSQL1 = "SELECT ID_prod, image_prod,  Nameprod, product.id_cat, name_categ, kol_vo, price, category.id_cat
                FROM product, category 
                WHERE category.id_cat = product.id_cat 
                AND   category.id_cat = 2";
    } 
 
$result1 = mysqli_query($conn,$strSQL1) or die("Не могу выполнить запрос2!");
Запрос пустой, потому что Вы в выражения
SQL
1
2
 
AND   category.id_cat = '1'";
и
SQL
1
 AND   category.id_cat = '2'";
Вставили строки, а в базе данных у Вас, скорее всего, id_cat имеет тип INT. Поэтому СУБД не нашла у Вас сроки в столбце, где все значения числа.
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
12.05.2020, 13:31
Цитата Сообщение от scivola Посмотреть сообщение
Попробуйте вот так:
ну, и нафига эти проверки, если запрос идентичен, меняется только параметр? подставлять в запрос сразу параметр и не нужно дублировать.
0
81 / 49 / 34
Регистрация: 22.05.2018
Сообщений: 192
12.05.2020, 13:42
Серьезно?! А если $id_cat будет равна 3, 4, 5 или 234, а надо только 1 или 2?

Убираем дубль:
PHP
1
2
3
4
5
6
7
8
9
if ($id_cat == 1 || $id_cat == 2) {   
 
    $strSQL1 = "SELECT ID_prod, image_prod,  Nameprod, product.id_cat, name_categ, kol_vo, price, category.id_cat
                FROM product, category 
                WHERE category.id_cat = product.id_cat 
                AND   product.id_cat  = ". $id_cat;
    } 
 
$result1 = mysqli_query($conn,$strSQL1) or die("Не могу выполнить запрос2!");
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
12.05.2020, 17:31
Цитата Сообщение от scivola Посмотреть сообщение
А если $id_cat будет равна 3, 4, 5 или 234,
значит где-то\что-то не правильно. подразумевается что это id категории а id категории не может быть 1,2,4........
если в переменную id_cat попадает все что угодно, то нужно подправить в консерватории. а не плодить дубли запросов

Добавлено через 11 минут
проверить объявлена ли переменная и на пустоту, да, нужно
0
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
12.05.2020, 19:03
Запрос как-то по левому составлен. Обычно SQL выражение выглядит примерно так
SQL
1
2
3
4
SELECT product.ID_prod, product.image_prod,  product.Nameprod, product.id_cat, 
category.name_categ, category.kol_vo, category.price, category.id_cat 
FROM product LEFT JOIN category ON category.id_cat=product.id_cat 
WHERE product.id_cat=". $id_cat
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.05.2020, 19:03
Помогаю со студенческими работами здесь

Почему у одного выражения два разных результата
Добрый день всем. С Maple совсем не знаком, поэтому вопрос может показаться глупым. Все время работал с matlab. Так вот, кто может...

Найти вероятность того, что при вытягивании трех нитей окажется: 1) все нити одного цвета; б) все нити разных
2. В мешке смешаны нити трех цветов: белых 50%, красных – 30%, черных – 20%. Определить вероятность того, что при последовательном...

Возможна ли компиляция одного и того же исходного кода в разных компиляторах?
Будут ли копии одной и той же программы на Си компилироваться в разных компиляторах или потребуется вносить какие-то изменения в исходный...

Использование на странице одного и того же шрифта с google fonts, но в разных стилях
Как использовать на странице один и тот же шрифт с google fonts, но в разных стилях? Мне нужно Roboto в medium и Light. Если выбрать оба и...

Использование одного и того же блока HTML на разных страницах средствами php
Привет, форумчани. php еще не изучал, то есть полный ноль в этом деле) Я хотел бы узнать, как средствами php подключать один и тот же код...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru