AJAX - XMLHttpRequest在htdocs之外打开php文件

时间:2011-12-20 19:09:30

标签: php ajax

这是简化的代码,我在epr_lib.php中调用JS。

epr_lib.php位于cgi-bin文件夹中,这意味着在htdocs之外。

在cgi-bin文件夹中我有以下文件:epr_lib.php; newrequest.php。

我的问题是:如何在ajaxRequest.open中调用htdocs之外的文件?或者这是不可能的?

var ajaxRequest;
ajaxRequest = new XMLHttpRequest();
ajaxRequest.onreadystatechange = function(){
    if(ajaxRequest.readyState == 4){
        suppl_addrss.innerHTML = ajaxRequest.responseText;
    }
}
ajaxRequest.open("GET", "newrequest.php?task=getsuppladdrss", true);
ajaxRequest.send(null); 

谢谢。

1 个答案:

答案 0 :(得分:1)

不,这是不可能的。 Ajax请求为该文件发出http请求,因此您必须在htdocs中使用它。

您可以创建一个加载cgi-bin文件的代理脚本。只需创建一个包含cgi-bin文件的文件:

// myproxy.php
// you'll have to get the querystring and use it as a variable in newrequest.php
$vars = $_GET("task");
include('../cgi-bin/newrequest.php');