Если вы хотите закодировать его с нуля, основной процесс заключается в создании сценария PHP, который собирает данные и отправляет их обратно в запрос AJAX. Обычно я создаю отдельный PHP-файл, который обрабатывает любую нужную мне операцию.
Все, что ваш PHP-скрипт обычно выводит, отправляется обратно в AJAX-запрос. Так что любые HTML-теги, любые операторы echo / print. Такие вещи, как header (), также создают вывод, просто предупреждение.
В зависимости от дизайна страницы, вы можете создать HTML в PHP, а затем использовать jQuery для размещения этого HTML на странице по мере необходимости. Другой вариант - использовать PHP json_encode () и отправить все данные обратно в виде JSON и создать клиентскую часть HTML-структуры.
Если каждый элемент канала будет иметь одинаковую базовую структуру, то, вероятно, проще всего создать сторону HTML-сервера в PHP, как для любой обычной страницы. Вам нужен только фрагмент кода HTML, который является фидом.
Самый простой метод - это jQuery.load ()
http://api.jquery.com/load/
Внутри HTML-страницы:
<script>
function refreshNews()
{
$("#news").load("path/to/ajax.php")
}
</script>
<div id="news"></div>
В PHP:
$sql = "SQL TO GET NEWS FEED";
$result = mysql_query($sql);
while($feedItem = mysql_fetch_assoc($result))
{
echo("<div class='feedItem'>");
echo("<div class='title'>" . $feedItem['title'] . "</div>");
echo("<div class='body'>" . $feedItem['body'] . "</div>");
echo("</div>");
}
Затем вы можете вызвать функцию refreshNews () из другого события (кнопка обновления, событие по времени и т. Д.).
Очевидно, что ваш html и структура данных могут отличаться. Просто убедитесь, что это единственное, что выводит этот файл PHP. Это включает в себя все, что находится за пределами тегов.
Существуют более эффективные способы сделать это, этот скрипт будет по существу перезагружать весь список новостей при каждом вызове refreshNews (). На данный момент это один из самых простых способов заставить его работать, так что попробуйте, и в случае необходимости есть более эффективные способы.