出于开发原因(使用facebook-connect)我将连接iframe放在iframe中。在那种方式,我能够独立于我的IP工作连接东西,而不必在实时服务器上开发。
持有连接按钮iframe的iframe在我的服务器上,访问与开发人员版本相同的db-server(开发人员版本在localhsot上运行)。
至于好......但是
如何让父网站知道用户已连接,以便我将他的个人资料图片显示为对此的反应? 我如何能够对iframe中的action / event / JS做出一般反应?有办法吗? iframe可以将数据发布到父站点吗?像时间戳和fb_userid?
如果iframe的东西不起作用...... 我想把ip保存到fb_userid(到db)并检查匹配......但我不喜欢这个想法。
答案 0 :(得分:1)
您可以使用iframe的src
属性通过查询字符串格式将变量传递给框架,例如:
<iframe src="mysite.com?var=test"............>
答案 1 :(得分:0)
非常感谢@Sarfraz Ahmed,您的帖子是我解决方案的灵感来源:
使用iframe的src,我将当前会话ID作为GET参数发送。
<iframe src="http://www.online_host.com/scriptxy.php?id_session=<?=session_id()?>"></iframe>
然后,iframe中的脚本会在执行某些操作后进行回调,例如
<script>
location.href="http://localhost/localscript.php?id_session=<?=$_REQUEST['id_session']?>¶meters_here=something";
</script>
应该注意的是,GET参数名称不能是“sessionid”或“sessid”,因为大多数apache安装都不允许这样做。
在PHP localscript.php中,您可以执行以下操作:
session_id($_REQUEST['id_session']);
session_regenerate_id();
$_SESSION['param1'] = $_REQUEST['param1'];
...
现在,您可以在当前运行的本地PHP中访问sessiondata。与触发的AJAX请求间隔一起,这对于开发来说已经足够好了。
问题是,我正在使用CodeIgniter(使用PostgreSQL和session-plugin ecko)并在PostgreSQL驱动程序脚本中遇到内存问题,直到现在我都没想到。