Мне нужно создать RSS-канал для нашей информационной системы, который написан на PHP.У меня не было проблем ни со спецификацией RSS 2.0, ни с созданием генератора RSS-каналов.Элементы для канала должны выбираться из большой таблицы, содержащей много записей, поэтому для получения всей необходимой информации из этой таблицы потребуется много времени.Поэтому необходимо реализовать следующую схему:
- Чтобы показать 5 последних элементов новым подписчикам.
- Для существующих подписчиков - показать только те элементы, которые были добавлены с тех пор.их последнее представление канала.
У меня нет проблем с первым условием: я могу просто использовать предложение LIMIT, чтобы ограничить количество извлекаемых строк.Примерно так:
$items = function_select(“SELECT * FROM some_table ORDER BY date DESC LIMIT 5);
Но это создает следующую проблему: Предположим, есть настоящие подписчики на фиды, которые уже прочитали статьи с 1 по 10. После того, как они отсутствовали в течение некоторого периода времени, новыепредметы были созданы;скажем, 10 новых предметов.
Во время следующей регистрации мы хотим, чтобы они увидели все новые 10 предметов, но не все сразу.Они увидят только последние 5 (от 16 до 20), но не все 10 из них.Пункты от 11 до 15 будут опущены.
Я полагаю, что для успешного решения этой проблемы должен быть своего рода флаг, который нужно отправить на фид.Например: pubDate последнего загруженного элемента. лента Twitter использует нечто подобное.Однако эта ссылка сделана вручную.Как это можно сделать по-другому?Пожалуйста, дайте мне знать, если у вас есть идеи.Если у вас есть готовый пример (не важно на каком языке), просто поделитесь ссылкой со мной.Я был бы очень признателен.
Заранее спасибо.