2017-06-04 127 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设置为空。如果情况并非如此,那么在数据库中搜索任何本地主机。