Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,860

Не правильно работает условие if-else

30.03.2022, 22:15. Показов 1540. Ответов 37
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите в чем ошибка, почему не правильно срабатывает условие if-else???

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
$link = mysqli_connect($host, $user, $pass, $db_name) or die("Could not connect: " . mysqli_error());
 
//наиболее продаваемые товары
$sql_2 = "SELECT COUNT(*) FROM clothes WHERE `DATETIME` <= NOW() AND `DATETIME` >= DATE_SUB(NOW(), INTERVAL 1 MONTH)";
$result_2 = mysqli_query($link, $sql_2);
$row_2 = mysqli_fetch_array($result_2);
... 
...
...
<!-- 2 letest product section -->
    <section class="top-letest-product-section">
        <div class="container">
            <div class="section-title">
                <h2>Наиболее продаваемые товары</h2>
            </div>
            <div class="product-slider owl-carousel">';
echo $content;
            if ($row_2 > 9)
            {
                printf("Получено row_2 %d строк.\n", $row_2[0]);
 
            }
            else
            {
 
            }
 
 
            $content = '
            </div>
        </div>
    </section>
    <!-- 2 letest product section end -->
Миниатюры
Не правильно работает условие if-else   Не правильно работает условие if-else  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
30.03.2022, 22:15
Ответы с готовыми решениями:

Условие if(не правильно работает(( )
Здраствуйте, в MVS 2008 пытаюсь сделать условие if но не могу понять что делаю не так, вот код: #include &quot;stdafx.h&quot; #include...

Не правильно работает условие
Привет всем. У меня не правильно работает условие такого вида if ($cat==1) {$name = &quot;первая&quot;;} elseif ($cat==2...

Структура Аэрофлот: Не правильно работает условие
Не могу понять почему else не правильно работает. Вконце когда ввожу номер рейса постоянно добавляется, что таких номеров нет. Объясните в...

37
1306 / 998 / 232
Регистрация: 01.10.2018
Сообщений: 3,882
30.03.2022, 22:50
Неправильно извлекается результат из таблицы БД mysql при запросе количества строк

Добавлено через 2 минуты
Про fetch_row уже забыли? Помогать вам становится неинтересно.

Добавлено через 2 минуты
Про использование $content уже молчу.
1
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,860
30.03.2022, 22:55  [ТС]
estic,
Цитата Сообщение от estic Посмотреть сообщение
Про fetch_row уже забыли? Помогать вам становится неинтересно.
а причем тут if-else и fetch_row?

...

если у меня все нормально до этого работало, и как только я запихнул все в проверку if-else на количество некоторых параметров в БД то у меня вообще бредятина стала высовываться ...

получается что при условии наличия более 9 элементов, у меня высовывается информация что данных элементов 6 - как это по вашему выглядит?
0
1306 / 998 / 232
Регистрация: 01.10.2018
Сообщений: 3,882
30.03.2022, 23:03
Цитата Сообщение от xamelione25 Посмотреть сообщение
а причем тут if-else и fetch_row?
Когда человек недавно "обговоренный" оптимальный вариант меняет на ЧЗЧ, помогать ему становится неинтересно.

Порядок значимости написанного мной в предыдущем сообщении - сверху вниз к менее значимому. Вам уже указали на ошибку - перечитайте сообщение по ссылке выше.
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,860
30.03.2022, 23:04  [ТС]
estic, я уже менял row на row[0] у меня ничего не изменилось!!!
0
1306 / 998 / 232
Регистрация: 01.10.2018
Сообщений: 3,882
30.03.2022, 23:06
Сравниваемое значение находится в $row_2[0]. $row_2 - это массив, а вы пытаетесь его сравнивать с числом. Честное слово, не в том порядке вы взялись за изучение программирования.
1
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,860
30.03.2022, 23:15  [ТС]
estic, невнимательность ... не в том месте менял row на row[0]

но если если условие правильно работает почему у меня дальше while не срабатывает???
0
1306 / 998 / 232
Регистрация: 01.10.2018
Сообщений: 3,882
30.03.2022, 23:23
Цитата Сообщение от xamelione25 Посмотреть сообщение
почему у меня дальше while не срабатывает???
Потому что. Какой вопрос - такой ответ!

Добавлено через 1 минуту
На чем вы собрались while делать? На $result_2?

Добавлено через 3 минуты
Без предварительного fetch - одна итерация. С у же имеющимся fetch - ноль.
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,860
01.04.2022, 07:53  [ТС]
estic, я не могу понять другого
у меня как не одно так другое ... у меня этот код до этого работал я даже пересмотрел примеры... отличий не нашел ... не пойму почему не выходит инфа из while

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
$sql = "SELECT COUNT(*) FROM clothes";
$result = mysqli_query($link, $sql); // выполняем запрос ($link - подключение к базе)
$row = mysqli_fetch_row($result);
 
    <!-- letest product section -->
    <section class="top-letest-product-section">
        <div class="container">
            <div class="section-title">
                <h2>Новые поступления</h2>
            </div>
            <div class="product-slider owl-carousel">';
echo $content;
            while ($row = mysqli_fetch_assoc($result))
            {
                echo '<div class="product-item">';
                    echo '<div class="pi-pic">';
                        echo "<img src='" . $row['name_img'] . "' alt='' />";
                        echo '<div class="pi-links">';
                           echo '<a href="#" class="add-card"><i class="flaticon-bag"></i><span>ADD TO CART</span></a>';
                            echo '<a href="#" class="wishlist-btn"><i class="flaticon-heart"></i></a>';
                        echo '</div>';
                    echo '</div>';
                    echo '<div class="pi-text">';
                        echo "<h6>" . $row['Price'] . "</h6>";
                        echo "<p>" . $row['Name_clothes'] . "</p>";
                    echo '</div>';
                echo '</div>';  
            }
 
            $content = '
 
            </div>
        </div>
    </section>
    <!-- letest product section end -->
Миниатюры
Не правильно работает условие if-else   Не правильно работает условие if-else  
0
1306 / 998 / 232
Регистрация: 01.10.2018
Сообщений: 3,882
01.04.2022, 09:57
Я вам об этом и писал. Всегда нужно понимать суть того, что вы делаете. (Потом внимательно читать документацию по используемым инструментам.)

Для вывода списка нужен отдельный запрос для выбора списка и соответствующий fetch (fetch_assoc). A то вы выбрали из базы данных, например, число 6 и надеетесь, что это число "родит" список товаров

Добавлено через 2 минуты
echo, да еще "елочкой", - это очередной facepalm! Я вам целых три ссылки давал с примерами оформления while. Напрасная работа? Скоро перестану это делать.
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,860
01.04.2022, 09:59  [ТС]
estic,
Цитата Сообщение от estic Посмотреть сообщение
Для вывода списка нужен отдельный запрос для выбора списка и соответствующий fetch (fetch_assoc).
вы про
PHP
1
$row = mysqli_fetch_row($result);
??? так я его и в цикле а за циклом прописал ... не врублюсь ... или вы не про что-то другое имеете ввиду?

Цитата Сообщение от estic Посмотреть сообщение
echo, да еще "елочкой"
это я позже сделаю - красоту наведу ... когда будет все нормально работать у меня
0
1306 / 998 / 232
Регистрация: 01.10.2018
Сообщений: 3,882
01.04.2022, 10:07
К предыдущему сообщению. Количество иногда можно посчитать на основе выбранного списка, но не наоборот. На главную товары обычно выбираются при помощи "LIMIT 6", причем это не означает, что товаров будет обязательно 6 (может быть и меньше). Если после этого запроса нужно узнать реальное количество выбранных товаров, "смотрите" на количество записей в выборке или считаете количество в процессе вывода, если это число можно вывести после списка.

Добавлено через 2 минуты
Цитата Сообщение от xamelione25 Посмотреть сообщение
вы про ???
Если вы не понимаете, что означают слова "нужен отдельный запрос", о чем с вами говорить???

Добавлено через 1 минуту
Запрос - это обращение к базе данных. Реализуется посредством метода query.
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,860
01.04.2022, 10:10  [ТС]
estic,
Цитата Сообщение от estic Посмотреть сообщение
слова "нужен отдельный запрос"
куда внутри while или вне его ... вы имеете ввиду? или вы о другом имете ввиду

вы про это говорите?

PHP
1
2
3
$sql = "SELECT COUNT(*) FROM clothes";
$result = mysqli_query($link, $sql); // выполняем запрос ($link - подключение к базе)
$row = mysqli_fetch_row($result);
Добавлено через 30 секунд
estic, Просто я уже его везде пихал этот запрос - 0 эмоций
0
1306 / 998 / 232
Регистрация: 01.10.2018
Сообщений: 3,882
01.04.2022, 10:22
Цитата Сообщение от xamelione25 Посмотреть сообщение
вы про это говорите?
Это запрос на выбор количества записей. Нужен отдельный запрос на выбор самих записей. От первого еще можно отказаться:
Цитата Сообщение от estic Посмотреть сообщение
Количество иногда можно посчитать на основе выбранного списка, но не наоборот. На главную товары обычно выбираются при помощи "LIMIT 6", причем это не означает, что товаров будет обязательно 6 (может быть и меньше). Если после этого запроса нужно узнать реальное количество выбранных товаров, "смотрите" на количество записей в выборке или считаете количество в процессе вывода, если это число можно вывести после списка.
От второго никак. Чтобы вывести записи товаров, их сначала нужно выбрать из базы данных

Добавлено через 5 минут
Контрольное задание: напишите запрос для выбора максимум шести товаров. Пока не "решите", дальше двигаться смысла нет.
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,860
01.04.2022, 10:29  [ТС]
estic, все увидел косяк
MySQL
1
COUNT(*)
ошибка в селекте лежит ... а я на php смотрю(
0
1306 / 998 / 232
Регистрация: 01.10.2018
Сообщений: 3,882
01.04.2022, 10:35
Цитата Сообщение от xamelione25 Посмотреть сообщение
ошибка в селекте лежит ... а я на php смотрю(
Это только подтверждает, что вы даже не понимаете язык, на котором с вами тут разговаривают. Последний раз прошу: займитесь обучением в естественном порядке!
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,860
01.04.2022, 10:39  [ТС]
estic, поймите я не умею так чтобы прочитать теорию и разобраться ... я не воспринимаю гуманитарий ...
мне без примеров и аналогии сложно - поэтому часто и спотыкаюсь ... в большинстве приходится от конца к началу подходить в решении вопрос

Добавлено через 2 минуты
estic,
Цитата Сообщение от estic Посмотреть сообщение
К предыдущему сообщению. Количество иногда можно посчитать на основе выбранного списка, но не наоборот. На главную товары обычно выбираются при помощи "LIMIT 6", причем это не означает, что товаров будет обязательно 6 (может быть и меньше). Если после этого запроса нужно узнать реальное количество выбранных товаров, "смотрите" на количество записей в выборке или считаете количество в процессе вывода, если это число можно вывести после списка.
и подскажите а это как-то к этому возможно применить к тому что мне нужно?
Как сформировать запрос для выборки недостающих элементов из БД добором
0
1306 / 998 / 232
Регистрация: 01.10.2018
Сообщений: 3,882
01.04.2022, 10:39
Цитата Сообщение от xamelione25 Посмотреть сообщение
поймите я не умею так чтобы прочитать теорию и разобраться ...
Значит вы и учиться не умеете. После теории всегда идет практика для закрепления. И так многократно.
0
Надуваю лягушек
Эксперт PHP
 Аватар для Царь Бабай
289 / 219 / 93
Регистрация: 01.05.2014
Сообщений: 742
01.04.2022, 10:44
Может типа такого?

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
//$link = mysqli_connect($host, $user, $pass, $db_name) or die("Could not connect: " . mysqli_error());
$link = new mysqli($host, $user, $pass, $db_name);
 
$result = $link->query("SELECT * FROM `clothes` WHERE `DATETIME` <= NOW() AND `DATETIME` >= DATE_SUB(NOW(), INTERVAL 1 MONTH)");    
  
             if ($result->num_rows > 9)
             {
                 
 while ($row = $link->fetch_array())
            {
        echo '<div class="product-item">';
                    echo '<div class="pi-pic">';
                        echo "<img src='" . $row['name_img'] . "' alt='' />";
                        echo '<div class="pi-links">';
                           echo '<a href="#" class="add-card"><i class="flaticon-bag"></i><span>ADD TO CART</span></a>';
                            echo '<a href="#" class="wishlist-btn"><i class="flaticon-heart"></i></a>';
                        echo '</div>';
                    echo '</div>';
                    echo '<div class="pi-text">';
                        echo "<h6>" . $row['Price'] . "</h6>";
                        echo "<p>" . $row['Name_clothes'] . "</p>";
                    echo '</div>';
                echo '</div>';          
            }
 
             }else{
                 
                 
             }
0
 Аватар для tarasalk
1992 / 1216 / 440
Регистрация: 13.06.2013
Сообщений: 4,115
01.04.2022, 11:11
Цитата Сообщение от xamelione25 Посмотреть сообщение
мне без примеров и аналогии сложно - поэтому часто и спотыкаюсь
В документации полно примеров. Все что вы спрашиваете там есть.
А если вы ждете пример решения конкретно вашей задачи, то едва ли так чему-то научитесь. Это как учиться ездить только по 1 конкретному маршруту, а не по всем дорогам.

На 99% уверен что вы пытаетесь сразу сложные задачи решать, а надо с основ начинать. Хотя бы SQL отдельно от PHP.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.04.2022, 11:11
Помогаю со студенческими работами здесь

Как правильно записать условие для подсчета быков и коров. Мое работает через раз
/*Написать игру «Быки и коровы». Программа «загадывает» четырёхзначное число и играющий должен угадать его. После ввода пользователем...

Условие if (условие1 || условие 2) не работает а по отдельности работатет
Добрый день Наверняка я туплю но тем не менее задачу не могу решить))) if (file.type!= &quot;image/jpeg&quot; || file.type!=...

Проверка на число: Одно и то же условие работает в случае numchar, но не работает с xchar и ychar
Помогите ламеру с ламерской программкой. В тестирующей функции запрашиваются три строки numchar, xchar, ychar (число для вывода и...

Правильно ли я понял условие ?
1) Нахожу обратную матрицу для очередной матрицы 2) Сравниваю полученную обратную матрицу с последующими матрицами 3) Если есть...

Правильно задать условие
function dy=rigid(t,y) dy = zeros(2,1); % a column vector if abs(9.915*y(1)+0.8051*y(2))&lt;0.262 dy(1)=y(2); ...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Использование 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