#php #mysql
Добрый день. Есть база такого формата Структура: id - цифры (идут не всегда по порядку) text - mediumtext (тут какая то цитата) Задача в том, чтобы выводить их по очереди по 1 записи. А точнее при нажатии кнопки "Следующая" должна вывестись следующая запись с базы данных. Так как id не всегда по порядку, то столкнулся с проблемой реализации, так как с БД еще мало знаком.
Ответы
Ответ 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 весьма сложны в обслуживании.Ответ 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
Комментариев нет:
Отправить комментарий