2013-02-15 65 views
0

我知道關於facebook和php sdk的問題很多,抓住了一些信息。但我有不同的問題。PHP Facebook SDK,獲取相冊

想象一下,我已經做了一切。

由fb授權用戶javascript sdk + php和ajax,存儲數據庫中的基本信息並忘記了facebook。現在我的用戶可以用我的數據庫登錄facebook信息。

在我的數據庫,我有:

id user_fb  say_smth access register mail limitTime count 

通知有user_fb,這是Facebook的帳號。

當用戶登錄時,我創建會話和與jQuery/AJAX/JSON解析

// Cache hit 
// $start = microtime(true); 
$res = $mysqli->query("/*" . MYSQLND_QC_ENABLE_SWITCH . "*/" . "SELECT fb_id, email, password FROM sp_signup WHERE email = '{$email}' AND password = '{$passw}' LIMIT 1"); 

$check_row  = $res->num_rows; 
$check_array = $res->fetch_assoc(); 

$res->free(); 

if ($check_row == 0) 
{ 

print json_encode(array("status" => "user does not exists", "code" => 10)); 

} else { 
if (! isset($_SESSION)) 
{ 
    session_start(); 
    $_SESSION[ "dh_user_fb" ] = $check_array["fb_id"]; 

    print json_encode(array("status" => "", "code" => 4, "session" => $_SESSION[ "dh_user_fb" ])); 
} else { 
    print json_encode(array("status" => "", "code" => 4, "session" => null)); 
} 

} // endcode

和jQuery阿賈克斯成功方法

var gotJson = jQuery.parseJSON(jsonR); 

var code = gotJson['code']; 
var status = gotJson['status']; 
var session = gotJson['session']; 

if (session == null){ 

if (code == 11){ 

    $("#email_try").html(status).fadeIn(600); 
               $("#email_try").html(status).fadeOut(2200); 

    } else if (code == 12 || code == 10) { 

$("#passw_try").html(status).fadeIn(600); 
               $("#passw_try").html(status).fadeOut(2200); 

    } else { 
               // 
    } 

}得到它

所以當用戶輸入時,有$ _SESSION [「fb_id」];

我需要通過php登錄用戶相冊並將其複製到我的本地ftp或從src從facebook。這不是壞事。

我只感興趣,如果有機會做到這一點沒有訪問令牌和登錄等,我想這樣做只有fb_id;

謝謝...

回答

0

你不能直接調用api就不能直接調用它。

得到用戶的權限來訪問他的照片

$loginLink = $facebook->getLoginUrl(array(
    'scope' => 'user_photos,user_photo_video_tags' 
)); 

然後使用這個API來獲取用戶的照片:

$photos = $facebook->api('/me/photos?access_token=' . $token); 
+0

在JavaScript範圍我已經取得許可的,當用戶註冊時,他/她可以讓照片範圍。 – Misha 2013-02-15 13:44:19

相關問題