2013-04-24 50 views
0

我正在一个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找到”


编辑:看起来像数组是空的,并且请求是(我仍然不明白为什么)一遍又一遍地发送,直到超时。现在有时(看起来像它随机)功能运行,但没有它的工作,其他时间它在inf循环。

回答

0

在您的PHP代码中,您的条件为runFunctionwriteJSON。你正在通过getAllwriteJSON()永远不会被调用。

尝试

<a id="done" href="savefunctions.php?runFunction=writeJSON">Done!</a> 
+0

大声笑抱歉的是,我在这里粘贴从别的地方。该getall的作品。 其实我的代码就是你写它的方式。对不起,我有点累。 'href =“savefunctions.php?runFunction = writeJSON”'不起作用。我将编辑该问题,谢谢指出 – 2013-04-24 15:17:15