2012-10-08 70 views
0

我知道這是重複的,但是,我嘗試了幾乎所有在其他問題中提出的建議。CodeIgniter Facebook API getuser始終爲0

我目前得到一個重定向循環,因爲getUser總是返回0,即使在批准應用程序之後。

代碼:

public function auth() { 
    $user = $this->facebook->getUser(); 

    if ($user) { 
     $user = $this->facebook->api('/me'); 
     if (!$this->Users->getByID($user["id"])) { 
      $this->data->needsRegister = true; 
     } else { 
      $toSetInSessions = new stdClass(); 
      $toSetInSessions->authed = 1; 
      $dbUser = $this->Users->getByID($user["id"]); 
      foreach ($dbUser as $key => $value) { 
       $toSetInSessions->user->$key = $value; 
      } 
      $this->session->set_userdata($toSetInSessions); 
      redirect("/"); 
     } 
    } else { 
     $params = array('scope' => 'email,read_friendlists'); 
     if ($_SERVER['HTTP_USER_AGENT'] != "facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)") { 
      redirect($this->facebook->getLoginUrl($params)); 
     } 
    } 

    $this->load->view('header', $this->data); 
    $this->load->view('auth', $this->data); 
    $this->load->view('footer', $this->data); 
} 

這裏是我的設置爲這個應用程序頁面的截圖。

https://dl.dropbox.com/u/6647629/facebookapp.png

有時它的工作,但大部分時間都沒有。

回答