I recently started developing an application on Facebook. It’s actually quite interesting although the Facebook developer interface leaves a lot to be desired. If a chat program operated the way Facebook does it would go something like this. To add a user you must first add the addUser application. Once this is completed you can add the first use through the addUser applications, but after that you must go to the first added user to add an additional user, it’s really a… but I digress. This post is about Facebook’s application canvas and specifically developing applications with the iframe option enabled.
In Internet Explorer (of course) you will lose the Facebook interface whenever a user clicks a link or submits a form. This drove me crazy, because an iframe was the only way for me to access the database on the server I was using. The solution was remarkably easy. It’s a header you can add to the top of your app.
"p3p", "CP=\"CAO PSA OUR\""
In PHP it looks like this.
header("p3p: CP=\"CAO PSA OUR\"");
More information can be found on the Facebook Developer forums.
- Breaking the Facebook canvas iframe in IE.
- iframe applications and P3P HTTP headers, “why make sure to implement P3P if using iframes?” cookies and session will not work in some browsers.