2017-06-04 196 views
0

我正在運行一些自定義php文件,其中包含通過名爲sourcerer的擴展名在Joomla網站內的一些JavaScript代碼。一切正常預料從事端的東西,但我遇到了一個問題,調用另一個從JavaScript內製作的php文件。這裏是有問題的JavaScript代碼,在第二行是從這個代碼中調用導致問題的「suburb.php」文件。Joomla POST 404錯誤(組件未找到)

$.ajax({ 
url : 'suburb.php', 
dataType: "json", 
method: 'post', 
data: { 
    name_startsWith: request.term, 
    type: 'suburb_table', 
    row_num : 1 
}, 
success: function(data) { 
    response($.map(data, function(item) { 
     var code = item.split("|"); 
     return { 
      label: code[0], 
      value: code[0], 
      data : item 
     } 
    })); 
} 
}); 

我遇到的問題是,即使包含該JavaScript始發的PHP文件在同一目錄中suburb.php文件,而Joomla似乎改變URL調用爲「localhost/index.php文件/menu_alias/suburb.php「,這會導致POST錯誤404(找不到組件)。

我已經嘗試在代碼的第二行中使用許多變體的url路徑,但都失敗了。有人可以告訴我什麼我的網址路徑應該看起來像這樣工作?

謝謝 Adri

+0

領域URL的值是錯誤的。請嘗試一個絕對的網址,而不是相對的網址。您的文件位於文件系統中的位置是什麼? –

回答

0

感謝您的反饋。我嘗試了絕對的URL與標準格式,但它給了某種有限的錯誤。有人隨後建議該選項,這工作,解決我的問題

url : "<?php echo Juri::base(); ?>directory/etc/suburb.php", 

感謝,Adri

+0

嗨阿德里,你可以請你的答案標記爲正確的嗎? – CleitonCardoso

0

使用絕對URL,而不是僅僅「suburb.php」,因此它應該是這樣的:http://www.[joomlasite].com/suburb.php

至於本地主機,那麼我會說你可能有在您的configuration.php中將$live_site設置爲「localhost」 - 確保將$live_site設置爲空。如果情況並非如此,那麼在數據庫中搜索任何本地主機。