2011-12-24 5 views
1

MySQL 테이블에 Facebook 정보를 저장해야합니다. PHP에서 사용자의 데이터를 가져 오기 위해 SDK를 사용하고 있습니다. 데이터를 얻을 때 이러한 데이터는 연관 배열에 있습니다. MySQL 데이터베이스에이 배열을 구문 분석해야합니다.Mysql에 Facebook 정보 저장

<?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); } 

?> 

이 절차는이 배열의 일부 나

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 
     ) 

에게 돌아갑니다.

귀하의 조언에 감사드립니다. 표 : 크리스마스와 행복한 새해 결혼.

+1

그래서 누군가가 당신에게 파서를 코딩하길 원합니다 :)? – ScarletAmaranth

+0

아니, 내가 코드 파서;) 도움이 필요 –

+0

이것은 간단한 데이터베이스 사용 문제처럼 보입니다. 1) 캡처 할 데이터 식별 (텍스트 유형/정수/부울), 2) 데이터베이스 작성, 3) 데이터베이스와 상호 작용할 쿼리/문 작성, 4) 해당 문장을 통합 한 PHP 빌드 5), 6) 이익! –

답변

1

불행히도 제한된 페이스 북 사용자 정보 만 데이터베이스에 저장할 수 있습니다. 개발자로 가입 할 때 동의 한 Facebook의 API 법적 약관을 읽어 보시기 바랍니다. 계약을 위반하면 Facebook이 귀하의 특권을 상실합니다.