mysqli вывод по одной записи

293
24 октября 2017, 03:03

Добрый день. Есть база такого формата

Структура: 
id - цифры (идут не всегда по порядку)
text - mediumtext (тут какая то цитата)

Задача в том, чтобы выводить их по очереди по 1 записи. А точнее при нажатии кнопки "Следующая" должна вывестись следующая запись с базы данных. Так как id не всегда по порядку, то столкнулся с проблемой реализации, так как с БД еще мало знаком.

Answer 1

Вам стоит прочитать про это http://postgresql.ru.net/manual/queries-limit.html

$sql = 'SELECT `id`, `text` FROM `comments` WHERE 1 LIMIT 1 OFFSET.$page;

Вообще советую не пилить велосипед и использовать Doctrine

http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/query-builder.html

Так как запросы в php весьма сложны в обслуживании.

Answer 2

Не обязательно делать выборку по id. Записи в БД хранятся в порядке добавления и этим порядком можно воспользоваться.

Предположим что таблица называется comments, тогда использует такой запрос:

SELECT `id`, `text` FROM `comments` WHERE 1 LIMIT 0, 1

Ключевое здесь - LIMIT 0, 1 где 1 - это кол-во строк, а 0 - отступ. Если изменить на LIMIT 2, 1, то мы получим только 3 строку из таблицы. LIMIT работает уже после WHERE, ORDER BY и GROUP BY

READ ALSO
Работа с ListView

Работа с ListView

Можно ли как-то сделать чтобы при отсутствии элементов в списке ничего не выводилось совсем? Да, знаю там есть свойство emptyText, но даже с ним...

216
Как использовать free в качестве deleter'а?

Как использовать free в качестве deleter'а?

У меня есть примерно такой код:

257
Ввод/Вывод __float128 C++

Ввод/Вывод __float128 C++

Подскажите как в C++ вводить __float128, потом вывести без знаков после точки

370
Несколько init-expression в for

Несколько init-expression в for

В синтаксисе for

205