将Facebook信息保存到MySQL


Save Facebook information to MySQL

我需要保存Facebook信息到MySQL表。我使用PHP SDK从用户获取数据。当我获取数据时这些数据都在关联数组中。我需要解析这个数组到MySQL数据库。

    <?php
require '/src/facebook.php';
$dbname = '';
$dbpass = '';
$dbuser = '';
$dbhost = '';
$appId = '';
$secret = '';
mysql_connect($dbhost, $dbuser, $dbpass);
mysql_select_db($dbname);

$facebook = new Facebook(array(
  'appId' => $appId,
  'secret' => $secret,
));
$user = $facebook->getUser();
$access_token = 'fb_'.$appId.'_access_token';

if ($user) {
  try {
    $user_profile = $facebook->api('/me');
  } catch (FacebookApiException $e) {
    error_log($e);
    $user = null;
  }
}
if ($user) {
  $logoutUrl = $facebook->getLogoutUrl();
} else {
  $loginUrl = $facebook->getLoginUrl(
    array(
      'scope' => 'user_about_me,user_activities,user_birthday'  
      )
    );
}
$sql_insert = "INSERT INTO users (user_id,username,access_token) VALUES ('$user_profile[id]','$user_profile[username]','$_SESSION[$access_token]')";
$sql_select = "SELECT user_id FROM users WHERE user_id='$user_profile[id]'";
$res = mysql_query($sql_select);
if(!mysql_num_rows($res) > 0) { mysql_query($sql_insert); } 
?>

这个过程返回me

    Array
(
    [id] => 1088214852
    [name] => User Name
    [first_name] => User 
    [last_name] => Name
    [link] => http://www.facebook.com/user.name
    [username] => user.name
    [birthday] => 24/12/2011
    [hometown] => Array
        (
            [id] => 107833015912178
            [name] => NY
        )
    [location] => Array
        (
            [id] => 109589969066408
            [name] => CA
        )

不幸的是,您可能只在数据库中存储有限的facebook用户信息。请阅读Facebook的API法律条款,您在注册为开发者时已同意。如果你违反合同,Facebook将取消你的权限。