【发布时间】:2011-11-14 21:17:37
【问题描述】:
考虑一个两种语言的网站,其中通过?lang=en 调用英文版页面以下 AJAX 调用似乎适用于打印 RSS 新闻的侧边栏:
$(document).ready(function() {
$.ajaxSetup ({
cache: false
});
$('.msg_head').eq(0).click(function(){
$('.msg_body').eq(0).load('printSideNews.php');
$('.loadMessage').eq(2).hide();
});
printSideNews.php 开头如下:
function checkNewsLanguage(){
$requiredURL = $_SERVER['REQUEST_URI'];
$Languag = explode('?lang=',$requiredURL);
$myLanguage = $Languag[1];
//echo $myLanguage;
if($myLanguage == 'en')
return false;
else return true;
}
由于某种原因,检查 URL 的语言检查不起作用。我无法获取新闻侧边栏的英文版。如果我直接转到news.php(no AJAX used but same PHP functions),我使用完全相同的程序,语言切换正在工作。非常感谢任何解决此问题的帮助。
【问题讨论】:
-
有什么理由不能只检查
$_GET['lang']而不是 _SERVER/explode/array 业务? -
@Marc haha,打败我。 @George 是否有任何特殊原因需要检查
$_SERVER["REQUEST_URI"]而不是$_GET["lang"]? -
你是对的,但它似乎没有帮助
-
lang什么时候设置? -
@Interstellar_Coder;单击作为链接的标志图像后