Facebook,iframe app,fb:请求表单,动作属性问题

Unr*_*ity 6 facebook serverfbml fbrequest-form iframe-app

我正在制作facebook iframe应用程序

我正在使用自己的表单数据创建一个请求表单.我该怎么做才能处理数据?

如果我把action ="http://apps.facebook.com/ [appName]/abc.php",即

<fb:serverfbml>
    <script type="text/fbml">
        <fb:fbml>
            <fb:request-form action="http://apps.facebook.com/[appName]/abc.php" method="post" type="abc" content="abc">
                <textarea name="pm" fb_protected="true" ></textarea>
                <fb:multi-friend-selector showborder="false" max="35" actiontext="test" email_invite="true" bypass="cancel" />
            </fb:request-form> 
        </fb:fbml>
    </script>
</fb:serverfbml>
Run Code Online (Sandbox Code Playgroud)

然后结果很有趣... facebook app的iframe里面的facebook页面!

但如果我把动作="http:// [我自己的域名/脸书连接网址] /abc.php",即

<fb:serverfbml>
    <script type="text/fbml">
        <fb:fbml>
            <fb:request-form action="http://[my own domain / facebook connect url]/abc.php" method="post" type="abc" content="abc">
                <textarea name="pm" fb_protected="true" ></textarea>
                <fb:multi-friend-selector showborder="false" max="35" actiontext="test" email_invite="true" bypass="cancel" />
            </fb:request-form> 
        </fb:fbml>
    </script>
</fb:serverfbml>
Run Code Online (Sandbox Code Playgroud)

然后结果页面将呈现WITHOUT facebook模板(这意味着丢失所有顶级Facebook横幅和底部Facebook栏,如Facebook聊天等)

谁知道什么是错的?

非常感谢阅读

小智 5

target ="_ top"的关键是你必须将它放在请求表单和多友元选择器上,以便它分别处理提交和取消.

请求表单需要target ="_ top",以便表单在提交时加载到顶部框架中,但取消功能由多朋友选择器控制,而不是请求表单.因此,你需要多朋友选择器上的target ="_ top",以便取消操作将加载到顶部框架中.

现在,我只是希望Facebook允许取消的"无"动作只会隐藏框架......


Mik*_*inz 1

我处理这个问题的方法是让我的表单处理器页面不发出任何输出,除了指向主应用程序的“<fb:redirect>”。