Обновление базы данных автоматически из RSS-канала - PullRequest
2 голосов
/ 22 марта 2012

Я хочу обновить базу данных MySQL с помощью элементов из RSS-канала.Когда RSS-лента получает новый элемент, он автоматически подается в базу данных MySQL.

У меня есть страница php, которая подключается к базе данных и вставляет данные, и у меня также есть парсер PHP RSS, но яЯ не уверен, как их соединить, чтобы при появлении нового элемента в ленте RSS он запускал сценарий PHP и вставлял этот элемент в базу данных.

Ответы [ 3 ]

3 голосов
/ 22 марта 2012

Лучший способ - запланировать задание cron, которое запускает скрипт PHP, чтобы проверить, существует ли новый канал RSS. Вы можете установить временной интервал для запуска этого скрипта (1 час, 1 день и т. Д.).

Если он находит новые данные, вы запускаете их через свой анализатор и передаете данные в свою базу данных. Вот некоторый код псевдо:

// Get RSS data new today
$rssFeed = getNewRssFeeds('today');

if($rssfeed)
{
   // Parse feed into an array of data
   $dataArray = $myRssParser->parse($newRSS);

   // Insert into DB
   $myDbHandler->insert($dataArray);
}

Ни одна из этих функций не является реальной, вам придется их кодировать. Но, как правило, это может работать.

0 голосов
/ 22 марта 2012

Мне нужна дополнительная информация о вашем коннекторе БД и парсере RSS ... какой API БД вы используете, это PDO MySQLi или что-то еще?Вы можете анализировать rss и сохранять данные из него в массиве или в объектах.

Вы можете создать запрос вставки и сохранить в нем данные из объектов или массивов, например:

$q = "INSERT INTO `my_table_name` (`id`, `name`, `etc`) VALUES (NULL, '$data->name', '$data->etc')";
0 голосов
/ 22 марта 2012

Вы можете настроить задание cron для периодического получения данных из RSS-канала и загрузки обновлений в базу данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...