我的网站上有一个页面,该页面来自用于天气警报的RSS源。如果有警报则显示信息,否则显示为空。此页面的链接是,
http://micklehamweather.com/rss-directbomvicalert.php
根据我之前提出的问题,我发现当RSS提要为空(而不是空白页)时,此页面会返回“\ n”
在我的主页面上,我尝试编写一些代码来查看此页面,如果它是空的,则显示一个图像,如果不显示不同的图像。
我目前的代码如下,但我似乎无法让它工作,
<?php
if ("http://micklehamweather.com/rss-directbomvicalert.php" == "\n") {
echo' Alerts <img width="20" height="20" style="vertical-align: middle;" alt="Warnings issued by the Bureau of Meteorology" src="images/alert-icon-120.png" border="0"> Warnings <img src="/green_alert.png" width="12" height="12">  ';
}
else {
echo' Alerts <img width="20" height="20" style="vertical-align: middle;" alt="Warnings issued by the Bureau of Meteorology" src="images/alert-icon-120.png" border="0"> Warnings <img src="/red_alert.gif" width="12" height="12">  ';
}
?>
有人知道我做错了什么或有什么建议会有所帮助吗?
我已添加以下RSS页面的代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" dir="ltr" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<link type="text/css" href="rss-style.css" rel="stylesheet">
<body bgcolor="#FFE991">
<?php
require_once("rsslib.php");
$url = "http://www.bom.gov.au/fwo/IDZ00055.warnings_nt.xml";
echo RSS_Display($url, 15, false, false);
?>
</fieldset>
</body>
</html>
非常感谢。
根据我的说明如下。当RSS源失败时,在页面顶部复制错误消息,
警告:DOMDocument :: load():php_network_getaddresses:getaddrinfo failed:第77行/homepages/13/d548979659/htdocs/rsslib.php中没有与主机名关联的地址
警告:DOMDocument :: load(http://www.bom.gov.au/fwo/IDZ00059.warnings_vic.xml):无法打开流:php_network_getaddresses:getaddrinfo failed:第77行/homepages/13/d548979659/htdocs/rsslib.php中没有与主机名关联的地址
答案 0 :(得分:0)
尝试这样的事情:
<?php
require_once("rsslib.php");
$url = "http://www.bom.gov.au/fwo/IDZ00055.warnings_nt.xml";
$rss_result = RSS_Display($url, 15, false, false); // set the result of this function to a variable rather than echoing it straight out
echo $rss_result; // then you can echo the variable
// and test it:
if (trim($rss_result) == '') // use trim too
{
// do green
}
else
{
// do red
}
?>