2011-12-20 14 views
0

ここでは簡略化したコードですが、私はepr_lib.phpの中でJSを呼び出しています。AJAX - htdocs以外のXMLHttpRequestオープンなPHPファイル

epr_lib.phpはcgi-binフォルダにあります。これはhtdocsの外であることを意味します。

私はこれらのファイルを持っています:epr_lib.php; newrequest.php。

私の質問は、htmlの外にあるファイルをajaxRequest.openでどのように呼び出すことができますか?またはこれは不可能ですか?

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

いいえ、不可能です。 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');