fb:serverfbml not rendering in ie7

2.5k views Asked by At

I'm writing a Facebook iframe/Facebook Connect application and one of the pages includes a multi-friend-selector. It renders perfectly in every browser I tried (FF/Mac, Safari/Mac, IE8/Win) but does not render at all in IE7/Win. I waited and waited (in case it was just being slow) and it never appeared.

Here's my code.

<fb:serverfbml style="width:750px;height:700px">
<script type="text/fbml">
<fb:fbml>
<fb:request-form
 action="<? echo $invite_href; ?>"
 method="post"
 type="<? echo $app_name; ?>"
 content="<? echo htmlentities($content,ENT_COMPAT,'UTF-8'); ?>">
 <div class="clearfix" style="padding-right:20px;" height="500" width="750">
 <fb:multi-friend-selector
  actiontext="Here are your friends who don't have <? echo $app_name; ?> yet. Invite your friends and let them help too - it's free!"
  exclude_ids="<? echo $friends; ?>" />
 </div>
</fb:request-form>
</fb:fbml>
</script>
</fb:serverfbml>

The other required things (FeatureLoader.js and all that) are (must be) properly included, since the friend selector and every other fb tag I use around the application works perfectly. The serverfbml tag is the ONLY thing giving me trouble in IE7. Most people seem to have a problem with the selector rendering at an annoying 150px tall - I can't seem to find anyone else who has a problem with it not rendering at all.

4

There are 4 answers

0
Erik Giberti On

Facebook is encouraging developers to switch to Requests 2.0. FBML is being deprecated and so reliance on fb:serverFbml will likely by phased out at some point this year. Fortunately there is a MUCH easier way to do this using the JavaScript SDK and it even works on websites.

FB.ui({method:'apprequests',...});

Learn more about using this here: http://af-design.com/blog/2011/02/17/using-facebook-requests-to-promote-a-website/

0
jtymann On

Are you using IE Tester to test ie6? If so it fails to render, this is an IE Tester bug.

0
Jackie On
0
Daniel Mason On

You do not need the closing tags because you're rendering FBML insdie the serverfbml tag, not xfbml. Another thing I noticed is you're passing PHP variables into it, whereas I'm pretty sure Facebook strips out all your php from within the server fbml, I may be wrong though.

Daniel