2015-11-18 126 views
-1

當用戶點擊登錄facebook時,我已經爲我的項目創建了fb登錄功能,它將用戶重定向到Facebook,成功後返回到該登錄頁面,但我想重定向它到其他頁面。 我嘗試了下,但它不工作如何在fb登錄後重定向到其他頁面

function index(){ 
      $redirect='http://login.dev';  
      echo $user = $this->facebook->getUser();          
      echo $token = $this->facebook->getAccessToken();          
    if(!$user){      
     $user=null; 
        // Generate a login url 
     $data['url'] = $this->facebook->getLoginUrl(array('redirect_uri'=>$redirect,'scope'=>'email')); 
     $this->load->view('login', $data); 
    }else{ 
     // Get user's data and print it 
     $user = $this->facebook->api('/me?fields=id,first_name,last_name,email,gender,locale,picture'); 
     print_r($user) 
     $this->load->view('userProfile',$user);       
    }    
} 

所以我的問題是,如何將其重定向到其他頁面,如果成功登錄。

+2

*「我已經創建的FB登錄時,與Facebook登錄的用戶點擊,它重定向用戶到Facebook和成功後回返回到登錄頁面。」 * - 應該被表述爲:*「我創建了fb登錄,當用戶點擊登錄Facebook時,它應該**將用戶重定向到Facebook,並且在成功之後**應該返回到該登錄頁面。」* –

+0

FB has限制重定向網址,將其與FB應用程序設置中的已批准域相匹配。如果你的redirct域沒有列出你不會有成功.. – Svetoslav

+1

你不應該在這裏發佈你的fb令牌 – ins0

回答

1

取代你的else部分

else{ 
    // Get user's data and print it 
    $user = $this->facebook->api('/me?fields=id,first_name,last_name,email,gender,locale,picture'); 
    return redirect('/login/form/', 'refresh'); 
} 
0
else{ 
     // Get user's data and print it 
     $user = $this->facebook->api('/me?fields=id,first_name,last_name,email,gender,locale,picture'); 
     //print_r($user) 

    //$this->load->view('userProfile',$user);       
    header('Location: your-page-path-after-login.php'); 
    }  

我想你問這個使用頭(「位置:你的頁面,路徑後的login.php」);在你的代碼的其他部分。

+0

,但登錄後無法進入其他部分 – kc1994

+0

那麼登錄成功後會出現哪部分代碼? – Rahul

+0

其他部分會來,但它不會去其他部分,這是我的問題 getUser()返回0,所以它會去如果部分 – kc1994

相關問題