1

我被困在这个 facebook 应用程序上,不知道我该如何继续。

对于画布,该应用程序非常完美。我有两个页面,quote.html 和quote.php。在quote.html 中,quote.php [从数据库中获取报价] 通过ajax 调用,它随机显示报价10 秒。

但是,对于墙标签/配置文件框,我似乎不知道我哪里出错了。我创建了一个名为“profile_box.php”的页面,调用 quote.php 获取报价,setFBML。虽然这适用于画布[没有时间],但它不会在墙上选项卡上显示任何内容。

<?php

include 'quote.php';


$row = mysql_fetch_array($result, MYSQL_ASSOC);
if ( !$row ) {
  echo "Empty";
}
else{

$fb_box = "<p>" . h($row['cArabic']) . "</p>";
$fb_box .= "<p>" . h($row['cQuotes']) . "</p>";
$fb_box .= "<p>" . h($row['vAuthor']) . "</p>";
$fb_box .= "<p>" . h($row['vReference']) . "</p>";
}

try{

    $url="http://website/name/quote.html";
    $facebook->api_client->fbml_refreshRefUrl($url);

    $fbml = "<fb:ref  url='$url'/>";

    if(isset($_REQUEST['fb_sig_page_id'])){
        $page_id = $_REQUEST['fb_sig_page_id'];
        $profile_type = $_REQUEST['fb_sig_type'];
        $facebook->api_client->profile_setFBML($appapikey, $page_id, "$fbml", NULL, NULL, "$fb_box");
    }
    else {
        $is_tab = isset($_REQUEST['fb_sig_in_profile_tab']);
        if( !$is_tab ) $user_id = $facebook->require_login();
        $result = $facebook->api_client->profile_setFBML($appapikey, $user_id, "$fbml", NULL, NULL, "$fb_box");
    }
}
catch(Exception $ex){
    echo 'Caught exception: ',  $ex->getMessage(), "\n";
}


echo "<fb:add-section-button section=\"profile\" /><br />";

?>

谁能指点一下?

4

1 回答 1

0

我讨厌成为坏消息的传递者,但是 Profile Boxes 和 Boxes Tab不见了

它们被替换为Application Tabs

换句话说,您将无法再在用户的个人资料上显示自定义内容。这一切都必须进入特定于应用程序的选项卡。

于 2010-04-21T17:50:47.487 回答