我正在开发一个facebook iframe应用程序(页面应用程序),它会计算已经喜欢粉丝页面的用户的朋友,如果它有30个或更多朋友,它会让用户通过HTML发送一些图像形式。
该应用在FF和Chrome上运行良好,但在IE中则不行。经过多次测试后,我想我知道问题所在,但不知道如何解决。
问题是,在成功安装应用程序后,它会将您重定向到同一个站点,但这次不会要求您安装它会显示快速注册表单,表单操作会将您发送到同一站点索引,但在此步骤中,应用程序不会显示快速注册表单,它将获取POST变量并计算已经喜欢粉丝页面的朋友。
但我注意到,在表单调用index.php之后,应用程序将不会在外部PHP文件上运行函数,并且因为我有一个包含所有函数的外部脚本,所以应用程序将无法正常工作。
所以问题是,当表单调用相同的索引(或任何其他索引)时,站点(app)将不会运行外部PHP脚本上的函数,但脚本已成功包含,因为如果我在将要执行的外部脚本的末尾创建一个echo。
我已经尝试过include,include_once,require和require_once。 PHP没有向我显示任何错误。 我最好的猜测是与IE的安全性有关。
我的一些代码。 在index.php,形式:
<form action="index.php?liked=1&quickregister=1" method="post">
index.php的开头:
include_once 'scripts/main.php';
global $facebook;
$signed_request = $facebook->getSignedRequest();
在main.php:
require_once 'db.php';
require_once 'functions/mail.functions.inc.php';
$fbconfig['appid'] = "************";
$fbconfig['secret'] = "*************************";
$fbconfig['baseurl'] = "my_app_url";
try{
include_once "facebook.php";
}
catch(Exception $o){
error_log($o);
}
答案 0 :(得分:0)
如果没有代码段,几乎不可能知道出了什么问题。但可能是IE第三部分的cookie问题。您的应用程序无法在IE中“登录”您的用户
有很多关于这个问题的信息。 link