2012-05-27 4 views
1

이것은 나를 미치게합니다.페이스 북을 가진 포스트 또는 사진에 위치를 추가하는 방법 php sdk

누구든지 실용을 예를 게시 할 수 있습니까? 삶에 대한 나의 감사는 :

  1. 은 게시물을 게시하고 사진을 게시 관련 체크인/위치 정보
  2. 을 추가하고 관련 체크인/위치 정보를 추가 할 수 있습니다.

두 경우 모두 사용자가 작업에 위임합니다. 우리는 이전에 의해 액세스 토큰을 가지고 있습니다.

에는 이론, 페이스 북은 객체배열의 중첩 된 구조를 요청하기 때문에 특히 엉망 오전 작업 코딩 snipper ;-)

어떤 도움이 정말

감사되지 않을 것이다

답변

1

$user 인스턴스를 가져옵니다.

$user = $facebook->getUser(); 

로그인 한 사용자가 인증되었는지 확인하십시오.

if ($user) { 
    try { 
    // Proceed 
    $user_profile = $facebook->api('/me'); 
    } catch (FacebookApiException $e) { 
    error_log($e); 
    $user = null; 
    } 
} 

게시에 필요한 권한이있는 로그인 URL을 제공하십시오. 사진 문서 http://developers.facebook.com/docs/reference/api/user/#photos

if ($user) { 
    $logoutUrl = $facebook->getLogoutUrl(); 
} else { 
    $loginUrl = $facebook->getLoginUrl(array(
      'scope' => 'read_stream,publish_stream,user_photos' 
      )); 
} 

장소 try/catch 블록에서 me/photos 호출이 발생할 수있는 예외를 포착하기에 명시된 바와 같이 특히 publish_stream 허가.

try { 
     $facebook->setFileUploadSupport('http://yourapicallingwebsite.com/'); 
     $response = $facebook->api(
      '/me/photos/', 
      'post', 
      array(
      'message' => 'Testing the Photo Upload', 
      'source' => '@/path/to/img', 
      'place' => 'place_id' 
     ) 
     ); 
     } 
    catch (FacebookApiException $e) { 
     error_log('An error occurred posting the image'); 
    } 

확인 나로부터의 응답은/사진 만약 당신이 좋아하면, 그것은 당신 같은

<img src=<?php echo $photo_u['picture'] ?>/> 

장소의 이름을 확인하는 경우

$photo_u = $facebook->api('/'.$response['id']); 

디스플레이 전화

$photo_place = $photo_u['place']; 
<span><?php echo $photo_place['name'] ?></span> 
+0

YOU ROCK !!!!!!! –