FBML не отображается в приложении Facebook в iframe - помогите - PullRequest
0 голосов
/ 15 апреля 2010

Я занимаюсь разработкой приложения для Facebook на PHP. Он загружается как iframe, а не как FBML. Нормальное взаимодействие с фейсбуком работает. Например, следующий код дает имя пользователя:

$facebook = new Facebook($config->appapikey, $config->appsecret);
$user_id = $facebook->require_login($required_permissions = 'email');
echo $user->name;

Где $ user - мой класс, в котором пользовательские данные загружаются с Facebook. Мой документ начинается следующим образом:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">
<head><title>Appname</title>
</head>
<body>
<script src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php/de_DE" type="text/javascript"></script>

И заканчивается это нравится:

<script type="text/javascript">  
FB_RequireFeatures(['XFBML','CanvasUtil'], function(){ 
FB.init("<?php echo $config->appapikey; ?>", "/app/xd_receiver.htm");
FB.CanvasClient.startTimerToSizeToContent(); 
 });
  </script>
</body>
</html>

Также загружается файл xd_receiver.htm, как я вижу в Firebug.

Но моя проблема в том, что, например, форма запроса не загружена. Мой код:

<fb:serverFbml>
    <script type="text/fbml"> 
        <fb:fbml>
            <fb:request-form method="post" action="<?php echo $config->site; ?>index.php" type="appname" invite="true" target="_top" content="content">
                <fb:multi-friend-selector actiontext="text" rows="3" showborder="true" target="_top"/>
            </fb:request-form>
        </fb:fbml>
    </script>
</fb:serverFbml>

Я вижу код с Firebug, но форма не отображается в Facebook.

2 или 3 недели назад он отображался, но за это время у меня были теги

    </fb:fbml>
</script>
</fb:serverFbml>

вокруг моего полного текста в теле. 2 недели назад у меня была проблема, что больше ничего не отображалось. После удаления тегов отображается мое приложение, но не форма.

Я ищу в сети одну неделю и читаю множество тем о FBML и XFBML в Facebook, но у меня ничего не получилось.

Так что заранее спасибо за помощь.

1 Ответ

0 голосов
/ 15 апреля 2010

Ух ты, я не уверен, что сказать. Я просто просмотрел весь ваш код, и все выглядит на месте. Может быть, попробуйте добавить это

FB.XFBML.Host.autoParseDomTree = true;

Сразу после звонка на FB.init()

...