@kotmypkotov

Как реализовать фиксированное количество выдачи строк?

Есть таблица в БД со значениями:
c94cc09803bd90c32dcd1.pngzak - Ссылка на сайт компании.
url_otz - Ссылка на сайт с некой информацией о компании.
kol_vo - Количество раз которое скрипт должен выдать эту строку на страницу(в течении неопределенного времени).

При переходе на страницу скрипт:
1) Берет рандомную(или по порядку) строку из БД.
2) Если значение kol_vo равно нулю, то берем следующую рандомную(или по порядку) строку.
3) Если значение kol_vo не равно нулю то выводим на страницу и понижаем значение на единицу(то-есть если было 4, то после того как скрипт взял эту строку минусует 1, и получается 3).

Уже всё перерыл, помогите. Я не особо специалист в РНР, но учусь.
  • Вопрос задан
  • 65 просмотров
Решения вопроса 1
StrangeDev
@StrangeDev
Web developer
тут можно обойтись одним SQL запросом, но можно и с PHP.
Делаем запрос на выборку строк и сразу отсекаем строки с нулевым значением:

SELECT * FROM table WHERE kol_vo <> 0 ORDER BY RAND()


Осталось только перебрать результаты:

foreach($results as $result) {
    echo $result['zak'];
    // Выполняем запрос обновления
   UPDATE table SET kol_vo = kol_vo - 1 WHERE id = $result['id'];
  }
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы