繁体   English   中英

雅虎股票行情记录器无法正常工作

[英]Yahoo stock ticker is not working properly

我正在研究股票行情显示和网站的股票行情显示编号。 我在这个网站上找到了一个股票。

但是在显示屏幕时出现错误-哪里出错了?

在此处输入图片说明

我在下面的代码中感觉到错误,但是我没有弄清楚如何解决它。

        // ...format, and output them. I made the symbols into links to Yahoo's stock pages.
        echo "<span class=\"stockbox\"><a href=\"http://finance.yahoo.com/q?s=".$stock_info[0]."\">".$stock_info[0]."</a> ".sprintf("%.2f",$stock_info[1])." <span style=\"";
        // Green prices for up, red for down
        if ($stock_info[2]>=0) { echo "color: #009900;\">&uarr;";   }
        elseif ($stock_info[2]<0) { echo "color: #ff0000;\"> }
        echo sprintf("%.2f",abs($stock_info[2]))."</span></span>\n";
        // Done!
        fclose($local_file); 
    }
?>

您必须通过具有PHP支持的Web服务器运行它。

您的错误位于第5行:

elseif ($stock_info[2]<0) { echo "color: #ff0000;\"> }

应该

elseif ($stock_info[2]<0) { echo "color: #ff0000;\">"; }

要么

elseif ($stock_info[2]<0) { echo 'color: #ff0000;">'; }

通常,我总是尽我所能避免转义quotes ,这迫使我知道何时关闭或打开引号。 例如,我宁愿做

echo "My name is '$bernard'";   
//and if the " quotes are compulsory
echo 'My name is "'.$bernard.'"';    

echo "My name is \"bernard\"";

它更干净,更易于阅读。

更新资料

我没有注意到URL,它是一个* .htm文件。 为了使代码甚至可以运行,您需要通过可以处理PHP代码的服务器运行它:)

您不会在此行上关闭引号:

elseif ($stock_info[2]<0) { echo "color: #ff0000;\"> }

发现问题出在原来说的网站上

“如果stockcache目录存在问题,该脚本可能会为每个库存条目打印“ 0.00↑0.00”。相反,看起来您的HTTP服务器正在吐出PHP代码而不是对其进行正确解析。这可能是与服务器配置错误或页面其他地方的代码冲突有关。不幸的是,如果我不了解更多上下文,就无法更加具体,例如相关网页的源代码,服务器操作系统,HTTPD和PHP版本,及其配置。”

在托管帮助中查找,发现它必须允许php(如果它在html中),必须创建一个.htaccess文件,并在与他们的支持简短聊天后添加托管公司给我的那一行解决了

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM