2013-02-15 66 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

相关问题