我正在开发一个Facebook应用程序,我正在尝试发送一些请求,但是一个特别似乎会产生问题:在FireBug的NET面板下,我可以看到请求一次又一次地发送,直到超时。
我要做的是:当用户点击一个按钮时,应该调用PHP文件中的function
。
save.php (将从此处发出调用该函数的请求)
<a id="done" href="savefunctions.php?runFunction=writeJSON">Done!</a>
请求已正确发送到http://localhost:8080/savefunctions.php?runFunction=writeJSON
,但似乎无法完成。
savefunctions.php (`$ arrayForJSON是一个保存数据的数组,应该写入JSON文件。
function writeJSON()
{
$myfile="testson.json";
$fileout=fopen($myfile,'w') or die("Fatal: Can't open JSON file for writing");
global $arrayForJSON;
if(isset($arrayForJSON))
{fwrite($fileout,json_encode($arrayForJSON));
echo "done";
fclose($fileout);}
else echo "Error: could not write to JSON file";
}
//Global:
if(!empty($_GET["runFunction"])){
if($_GET["runFunction"] == "writeJSON"){
writeJSON();
}
}
请求的状态为“302 Found”
编辑:看起来数组是空的,并且请求是(我仍然不明白为什么)一直反复发送直到超时。现在有时(看起来它是随机的)函数运行,但是不能完成它的工作,有时它会进入无限循环。
答案 0 :(得分:0)
在您的PHP代码中,runFunction
的条件为writeJSON
。您正在通过getAll
。 writeJSON()
永远不会被召唤。
尝试
<a id="done" href="savefunctions.php?runFunction=writeJSON">Done!</a>