Форум

Как проверить RSS-канал

?
2011-03-19 02:21:30

чико

Привет, Очень хороший читатель RSS. Мне нужно проверить URL-адрес потока перед его использованием. Потому что если это недействительный поток, то на экране отображаются PHP-ошибки. Я бы хотел этого избежать. Как проверить URL-адрес потока? Спасибо за помощь, которую вы сможете оказать.
2011-03-21 02:34:27

скриптол

Привет Поместите символ @ перед функцией PHP, чтобы избежать сообщений об ошибках. Это будет добавлено в следующей версии.
2011-03-21 20:24:34

чико

Спасибо за ответ. Я сделал то, что вы предложили, и больше сообщений об ошибках. Но теперь, если лента не является подлинной, пользователь получает белый экран там, где находится ошибка. Если есть какой-либо способ проверить поток автоматически и если он недействителен, то мы не будем выполнять функцию. Я настроил это так, что пользователи добавляют свои собственные ленты, и я уверен, что люди рискуют куда-то разместить плохие потоки. Я хотел бы сказать им, что поток плохой, а не показывать ошибки или белый экран. Как проверить правильность потока. Возможно ли это? Могу я просто интегрировать функцию в что-нибудь вроде :
if(fonction erreur fatale){
   dire que le flux est brisé;
} else {
 exécuter la fonction;
}
Спасибо за любую помощь, которую вы можете мне предложить.: D
2011-03-22 14:23:23

скриптол

Поток найден с этой функцией в RSS_Retrieve :
$doc->load($url);
Это возвращает значение false, если поток загружен неправильно. Итак, добавьте тест :
if($doc->load($url) == false) return false;
В конце функции добавьте :
return true;
А в основной функции RSS_Display :
if(!RSS_Retrieve($url)) return false;
Или показать любое сообщение с эхом.
if(!RSS_Retrieve($url)) { echo "Flux non valide"; return false; }