参见以下代码
<div id="news-ticker">
<marquee id="news-marquee" scrollamount="3" onmouseover="stop()" onmouseout="start()" style="padding-top:2px; padding-bottom:2px;">
Latest News
</marquee>
</div>
<script type="text/javascript">
var currenturl = document.URL;
if ((currenturl.indexOf("&lang=nl") != -1) || (currenturl.indexOf(";lang=nl") != -1) || (currenturl.indexOf("&lang=nl#content") != -1)) {
document.getElementById("news-marquee").innerHTML = '<?php require_once("news_nl.php"); ?>';
}
else if ((currenturl.indexOf("&lang=en") != -1) || (currenturl.indexOf(";lang=en") != -1) || (currenturl.indexOf("&lang=en#content") != -1)) {
document.getElementById("news-marquee").innerHTML = '<?php require_once("news_en.php"); ?>';
}
else if ((currenturl.indexOf("&lang=fr") != -1) || (currenturl.indexOf(";lang=fr") != -1) || (currenturl.indexOf("&lang=fr#content") != -1)) {
document.getElementById("news-marquee").innerHTML = '<?php require_once("news_fr.php"); ?>';
}
else {
document.getElementById("news-marquee").innerHTML = '<?php require_once("news_nl.php"); ?>';
}
</script>
在HTML页面上,我有一个div,其中包含一个用于在网页上显示最新新闻的选框。需要在选取框中显示的内容取自php文件。这是正在发生的事情:
当页面加载时,我首先看到选框中出现“最新新闻”。也就是说:它在javascript执行前不久显示。 在那之后,新闻选框显示正确的内容:如果我在网站的荷兰语(&amp; lang = nl)部分,荷兰新闻项目显示,法国项目显示在法国网站等。所以这很有效。
但有些网页上没有“&amp; lang = xx”路径,所以在这些情况下,我有其他条件默认显示荷兰语新闻项目。但是,这不会被执行。新闻选集保持空白。甚至不再显示“最新消息”。
Firebug不会对我造成任何错误,所以我不知道这里会发生什么。
答案 0 :(得分:2)
您的问题是您使用require_once
代替include
。 require_once
仅允许将文件包含一次。
我建议在PHP中进行检查,并且只向客户端提供其中一个文件以减少带宽使用。