Всем привет! Помогите решить такой вопрос: надо вывести 4 предыдущих записей и 4 следующих записей от запрошенного id (".$_REQUEST['id']."). Решил реализовать двумя запросами к базе:
$sql = "SELECT * FROM `table` where `cat`='$cat' and `id`>".$_REQUEST['id']." ORDER BY `id` asc LIMIT 4"; - этот выводит следующие 4 записи
$sql = "SELECT * FROM `table` where `cat`='$cat' and `id`<".$_REQUEST['id']." ORDER BY `id` desc LIMIT 4"; - а этот соответственно 4 предыдущие.
Все работает на ура, но только если запрошенный id не из первых или последних 4 записей, тогда один из запросов не срабатывает. То есть если запрошенный id = 3, то показывает только 2 предыдущие записи. Желаемое: Чтобы в таком случае брались 2 первых записи и 2 с конца. То есть сделать из бд некий циферблат, чтобы при любом ".$_REQUEST['id']." выводились 4 записи справа и 4 слева. Это в принципе можно реализовать?