2013-09-12Дата: Четверг, 12.09.2013, 12:39 | Сообщение # 7
Группа: Гости
Реализовать подобное можно и простыми условными операторами. Но, к сожалению, скрипт страдает главным недостатком: выбросе, если шаг между ID больше единицы. По-хорошему бы, вложить проверку условия для определения величины шага перехода, но сам программированием не владею
Реализовать подобное можно и простыми условными операторами.
Теперь уже можно, этот скрипт того времени когда не было оператора $REQUEST_URI$.
Цитата (Baddy)
Но, к сожалению, скрипт страдает главным недостатком: выбросе, если шаг между ID больше единицы.
Так же как и условия с оператором. Никак заранее (без запроса куда либо) не узнать есть ли такая страница или нет. Допустим вы добавляете новости, а потом некоторые удаляете .. вот вам и несоответствие/бреши в списке. Так что, неважно чем писать, скриптом или условием - косяки будут в любом случае.
Единственный вариант - это php скрипт, создающий базу ваших материалов по расписанию, например раз в сутки, в который совершается запрос с ID текущего материала. Происходит выборка из базы на предмет следующей новости, или первой, если текущая является последней, и предыдущей, и отдается массив с названием и ссылкой.
Тогда косяков не будет.
Выборку можно производить с API, простым перебором, пока не кончится. Простейшая база представляет из себя массив, типа:
Код
MATERIAL_ID, TITLE, ENTRY_URL
Выборка происходит по ID - предыдущий/следующий.
Если материалов о-о-очень много и они не удаляются со временем, полную базу можно писать единожды, а потом, по расписанию, добавлять новые. Так же, через API, пока не совпадет ID нового материала с уже существующем в базе.