如果我的网页为空,请执行此操作

时间:2016-11-21 10:37:26

标签: php

我的网站上有一个页面,该页面来自用于天气警报的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">&nbsp;&nbsp;&nbsp';
    }
    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">&nbsp;&nbsp;&nbsp';
    }
?>

有人知道我做错了什么或有什么建议会有所帮助吗?

我已添加以下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中没有与主机名关联的地址

1 个答案:

答案 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
    }
?>