The fbml below generates an invite form using a multi-friend-selector. Everything works, except the Skip button. No matter what url I place in the action attribute, the action in the rendered form is always blank. This of course causes the Skip button to 404.
<div class="invite">
<fb:serverFbml width="626">
<script type="text/fbml">
<fb:request-form
action="default.asp"
target="_top"
method="POST"
invite="true"
type="My Application"
content="<fb:req-choice url='facebook.com/somepage' label='Authorize my Application'/>">
<fb:multi-friend-selector showborder="true" email_invite="false" cols="4" rows="1" actiontext="Invite your friends to use My Application!">
</fb:multi-friend-selector>
</fb:request-form>
</script>
</fb:serverFbml>
</div>
Edit: On closer inspection, it looks like the 404 it goes to is http://www.facebook.com/plugins/serverfbml.php?. Found this as the only 404 response when tracking in Fiddler.
had the same problem and it was driving me crazy but i managed to fix it.
Try this : <fb:req-choice url='facebook.com/somepage' '
just add another ' right after that, make sure you use space between them. It's funny how I spent 2 hours trying to figure that out. If you wish I'll just copy and paste the whole code. Hope this helps, I'm pretty sure it will since I had the exact same issue. Cheers.
I had the same issue!!!
The fix was the following in my case:
action="http://YOURDOMAINNAME/APP/welcome.htm?${query_string}"
YOURDOMAINNAME must be the same as in your Canvas URL!
Update
Official response from Facebook on my bug report; they've closed it. Only took five months :).
Thanks for the report.
As we are in the process of
deprecating FBML/FBJS, we will not be
adding additional features or fixing
current bugs. If you are creating an
application on facebook.com, please
implement your application using our
supported APIs, SDKs and Social
Plugins. Using these you can embed
many of the same social features
available in FBML.
Please see more at our roadmap:
http://developers.facebook.com/roadmap
Related
I'm having a problem and I can't find any resources to handle it, maybe someone here will have a clue...
I have a facebook app where I use fb.ui dialogs. The problem is that they open too low, and I need to scroll down in order to click accept/cancel.
The only resource I found told me to make sure that the <div id="fb-root"></div> is right under the <body> tag, and this is the case with my app...
Any idea someone?
Thanks,
Yanipan
Your <div id="fb-root></div> need to go higher up in your html. preferably as the first tag.
Well, eventually I used CSS directly on #fb-root .dialog which allowed me to apply the absolute position the way I wanted it, quite simple actually...
Till yesterday everything was working fine.
In my website's head there was
<script src="http://static.ak.fbcdn.net/connect.php/js/FB.Share" type="text/javascript"></script>
and links like
<a name="fb_share" share_url="http://mysite.com/url"></a>
were transformed to facebook share plugins.
But now there is a problem - i can't see count of shares in plugin. I sniffed requests a little and the error is:
fb_sharepro_render({"error_code":104,"error_msg":"Requires valid signature","request_args":[{"key":"v","value":"1.0"}
I did not change anything on website and problem still occurs. Any hints?
Edit (probably an answer):
This bug is described here: http://bugs.developers.facebook.net/show_bug.cgi?id=19471
Facebook team response:
Thanks for the report. We are looking into this.
We recommend to use the like button instead as we are going to deprecate the
share button soon. The like button provides you with the same functionality and
more ...
http://developers.facebook.com/docs/reference/plugins/like/
Also, works solution with request to http://graph.facebook.com/?ids=*.
For example, while issue is not fixed by facebook, you can use a little modified facebook share widget script, it use a graph.facebook.com instead of api.facebook.com/restserver.php.
You have to introduce access_token also as a parameter. Find what facebook says
GET /fql?q=SELECT+uid2+FROM+friend+WHERE+uid1=me()&access_token=...
I have searched but cannot find the answer to a frustrating problem of mine. I have embedded a like box on my website. It works well in chrome; however, when I click "like" on it using Firefox & IE browsers, it says "verification required". When I click this, a pop up window appears that also says "verification required"; clicking this brings up another pop up and so on. There's no way to verify. It would be great if there was a way to avoid having my customers verify at all.
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script>
<fb:like-box href="http://www.facebook.com/pages/Errandly/170685252991884"
width="155"
show_faces="true"
border_color=""
stream="false"
header="false">
</fb:like-box>
Any help will be greatly appreciated.
Thank you.
Jack
This extra step for the user will occur occasionally based on Facebook's spam detection system if something causes their engine to think you may be involved in spam or click jacking. A Facebook moderator has confirmed this in this post on their developer forum. Your page seems to only have one like it must be some kind of false positive occurring - or perhaps you have liked and unliked the page in testing too many times.
I am a .net developer, using iframe xfbml and asp.net of course.
I am getting the following error:
The page you requested was not found.
You may have clicked an expired link or mistyped the address. Some web addresses are case sensitive.
* Return home
* Go back to the previous page
I am using the request-form tag as following:
<fb:request-form target="_top" action="http://apps.facebook.com/myapp"
method="POST" invite="true" type="myappliation"
content="come see
<fb:req-choice url='http://apps.facebook.com/myapp' label='i am coming' /> " >
<fb:multi-friend-selector rows="3" showborder="false" actiontext="its now shame to ask for help!" max="10" style="height:100px;" target="_top" />
</fb:request-form>
This code is working for some of the users, but for new ones they recieve that error. Why is that happening? How can I fix it?
I'm experiencing the same problem for a while. I tried with 2 applications, same configuration, with inviting the same user, and it's working for one of them but not the other...
By browsing similar post, I found no other solution except using the old API (see this post related) :
Facebook multi-friend-selector + new javascript API = BROKEN?
However, this does not help me since, I need the FB.ui function to pop up a dialog...
Facebook bugs me !
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.
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
Another SO post, which solved my problem: Why does this XFBML markup embedded within an iframe'd facebook application not display anything?
Are you using IE Tester to test ie6? If so it fails to render, this is an IE Tester bug.
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/