如何在Facebook页面选项卡应用程序上实现取消操作

时间:2013-10-28 16:22:44

标签: php facebook

我正在开发一个用php api实现的facebook应用程序。我面临的问题是,当我点击取消时,它会将我重定向到同一个按钮,这意味着我根本无法关闭对话框。我想找到一种方法,当用户点击取消按钮在应用程序的fb页面上重定向他。 有什么方法我可以用php捕获取消操作。我被困这么多个小时.. 我在下面提供一些代码:

if(!$user){
  $loginUrl = '';

  if(isset($signed_request["app_data"])){

    $loginUrl = $this->fb->getLoginUrl(
      array(
          'canvas' => 1,
          'scope' =>'email, user_likes',
          'redirect_uri'=>$curContest->fbpagelink .'?sk=app_'.$curContest->app_id . '?app_data=' . $signed_request["app_data"]
      )
    );
  }else {
    $loginUrl = $this->fb->getLoginUrl(
      array(
          'canvas' => 1,
          'scope' =>'email, user_likes',
          'redirect_uri'=>$curContest->fbpagelink .'?sk=app_'.$curContest->app_id
      )
    );
  }
  /* Redirect the main window NOT the iframe */
  //print_r($_GET['app_data']);
    echo '<script>top.location="'.$loginUrl.'";</script>';
}else{
//code of the app when user click on okay button ...
} 

1 个答案:

答案 0 :(得分:-1)

当用户取消授权选项时,Facebook会将其重定向回您的应用程序,并显示错误消息。返回url中的参数..

所以在代码中你可以写

if($_GET('error') || $_GET('error_reason')){
   // redirect to your facebook page

}

希望这对你有用!!