2011-06-07 151 views
3

以前我的代碼運行良好,但現在它什麼都不做
我想顯示一個對話框,然後用戶將能夠選擇一些朋友並邀請他們使用此應用程序。
此代碼顯示空白頁面。邀請朋友加入應用程序 - Facebook

<?php 
include_once "fbmain.php"; 
if (isset($_REQUEST['ids'])){ 
echo "Invitation Sent"; 
    $string = "<script type='text/javascript'>top.location.href='{$fbconfig['appBaseUrl']}';</script>"; 
    echo $string; 
} 
else { 
?> 
<fb:serverFbml style="width: 500px;"> 
<script type="text/fbml"> 
    <fb:fbml> 
     <fb:request-form 
       action="<?=$fbconfig['baseUrl']?>/invite.php" 
       target="_top" 
       method="POST" 
       invite="true" 
       type= <?php echo $fbconfig['appname']; ?> 
       content="I tried this and love this, what about you ? <fb:req-choice url='<?php echo $fbconfig['appBaseUrl']; ?>' label='Accept' />" 
       > 

       <fb:multi-friend-selector 
       showborder="false" 
       actiontext=<?php echo $fbconfig['appname' ]; ?>> 
    </fb:request-form> 
    </fb:fbml> 
</script> 

+0

它渲染的BLA nk page,NO ERROR – Sourav 2011-06-07 05:58:35

回答

1

我們邀請朋友的唯一方法就是使用FB JS 代碼

function showInvite() 
{ 
<?php 
if (strlen($fbconfig['appname' ])>50) 
{ 
$title = substr($fbconfig['appname' ],0,45); 
$title = $title . ' ...'; 
} 
else 
$title = $fbconfig['appname' ]; 

if (strlen($fbconfig['appBaseUrl'])>200) 
{ 
$message = substr($fbconfig['appBaseUrl'],0,200); 
$message = 'I just love this App, now it\'s your turn to try it @ '.$message; 
} 
else 
$message ='I just love this App, now it"s your turn to try it @ '.$fbconfig['appBaseUrl']; 
?> 
var r = FB.ui({ 
      method : 'apprequests', 
      message: '<?php echo $message; ?>', 
      title: '<?php echo $title; ?>', 
      }); 
} 
+0

function showInvite()必須在腳本標記中,當我調用這個函數時,它沒有顯示任何東西,我已經根據我的應用設置改變了appBaseUrl和appname – 2011-06-15 10:31:10

+0

Facebook已經改變了他們的GRAPH API來邀請朋友,在我的情況下它顯示'UNKNOWN ERROR OCCURRED',顯然showInvite應該在腳本標記中,因爲它是一個JS函數。你也需要添加FB.JS! – Sourav 2011-06-15 15:07:18

0

您是否嘗試過檢查網頁的源/ HTML?也許有一些錯誤報告。 你也可以在PHP調用error_reporting(E_ALL);這將使所有的錯誤被打印,而不是被隱藏。

此外,也許您可​​以檢查您的瀏覽器JavaScript日誌中是否有錯誤。

在Internet Explorer 9按F12

在Firefox下載螢火。

在Chrome中按CTRL + SHIFT +Ĵ

3

Facebook已經棄用這一傳統FBML插件。儘管它可能還會工作一段時間,但您仍然希望升級到新的Requests Dialog,這將更容易獲得支持。此外,我注意到其他一些棄用的功能最近停止工作(但他們還沒有正式被殺),所以這可能是這種情況。但檢查JavaScript控制檯的任何錯誤併發布它們。

-1
function showInvite() { 
    <?php 
    if (strlen($fbconfig['appname']) > 50) { 
     $title = substr($fbconfig['appname'], 0, 45); 
     $title = $title . ' ...'; 
    } else $title = $fbconfig['appname']; 

    if (strlen($fbconfig['appBaseUrl']) > 200) { 
     $message = substr($fbconfig['appBaseUrl'], 0, 200); 
     $message = 'I just love this App, now it\'s your turn to try it @ ' . $message; 
    } else $message = 'I just love this App, now it"s your turn to try it @ ' . $fbconfig['appBaseUrl']; ?> 

    var r = FB.ui({ 
     method: 'apprequests', 
     message: '<?php echo $message; ?>', 
     title: '<?php echo $title; ?>', 
    }); 
} 
+0

不要忘記描述你的代碼;它如何解決問題?它與五年前的答案有什麼不同? – 2016-06-13 18:35:28