<?php
include('changeLang.php');
$default_language = 'sr';
if(isset($_COOKIE['lang'])) {
$lang = $_COOKIE['lang'];
}
else {
$lang = $default_language;
}
if($lang == 'en') {
include('language_en.php');
}
else {
include('language_sr.php');
}
?>
我添加了一个新的URL路径,我没有弹出任何错误,当然它都在同一个文件夹中,并且没有子文件夹可以立即排除这种可能性。我想到了错误
<script type="text/javascript">
function changeLanguage (lang) {
$.ajax({
url: 'http://www.example.com/changeLang.php',
type: 'POST',
data:{ lang:lang },
beforeSend: function(){
},
complete: function(){
},
success: function(data) {
console.log(data);
if(data == 'ok'){
location.reload();
}
//var response = JSON.parse(data);
},
error: function(data, textStatus, errorThrown){
console.log("error"+' '+JSON.stringify(data) + textStatus + errorThrown);
}
});
}
</script>
//在代码中
我的错误是在href,因为我把href =“”,页面首先重新加载并且onclick函数从未被使用过,所以我必须把javascript:void(0)和css curosr:div指针#标志....
答案 0 :(得分:1)
您正在请求changeLang.php
,这不是在线文件的名称。您需要完整的URL。这同样适用于图像文件。
例如,在脚本的ajax部分,您有
$.ajax({
url: 'changeLang.php',
不是请求changeLang.php
,而是添加完整的文件名,例如http://www.example.com/site/changeLang.php
。这指定了您希望为该文件提供服务的服务器以及您知道的位置。
在本地,几乎总是只有一台服务器,而且往往是一个更简单的目录结构,减少了这些错误。一旦你把它上线,错误就会显示为错误。还要记住,实时站点的错误报告设置通常比开发环境中的错误报告设置更严厉。您可能想要在本地和在线查看您的php.ini文件。您可以tune it暂时向您显示所有详细信息。它可能会帮助你找出问题所在。