2014-07-22 85 views
-2
<?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> 

//代碼

我mistke是HREF,因爲我把HREF = 「」,該頁面是在第一和功能的onclick重裝從未使用過,所以我必須把javascript:void(0)和css curosr:指針指向div #flag ....

+0

定義*不起作用*。你遇到了什麼錯誤 ?你到目前爲止調試了什麼? – Rikesh

+3

** Eww **。沒有人會幫助你,如果你甚至不嘗試自我幫助。我會給你一個提示 - 將你的代碼縮小到不工作的地方,並提供錯誤(*,如果適用的話*)以進一步幫助。 – Darren

+0

如果你在代碼中修正了縮進,那麼它會有所幫助,所以它不會跳入代碼格式 – TheEnvironmentalist

回答

1

您正在請求changeLang.php,它不會是聯機文件的名稱。您需要完整的URL。這同樣適用於圖像文件。

例如,在腳本的AJAX部分,你有

$.ajax({ 
    url: 'changeLang.php', 

不是向changeLang.php,加在完整的文件名,如http://www.example.com/site/changeLang.php。這指定了您希望爲該文件提供服務的服務器以及您知道它的位置。

在本地,幾乎總是隻有一個服務器,並且通常是一個更簡單的目錄結構,從而減少了這些錯誤。只要你把它放在網上,錯誤就會顯示出來。請記住,實時站點的錯誤報告設置通常比開發環境中的錯誤報告設置要嚴格得多。您可能想要在本地和在線查看您的php.ini文件。您可以暫時向tune it告訴你所有的細節。它可以幫助你找出問題所在。

+0

** Uhhhhhh **' - >'如果它們位於同一個目錄中,它將起作用。 – Darren

+1

絕對是正確的,但這已經解決了我身邊的問題,比我的數量還要多。有用的建議,然後 – TheEnvironmentalist

+1

這是完全正確的:-)也許更新你的答案與一個例子和更好的解釋給OP一個理解! – Darren