2012-09-22 3 views
-1

아래 코드 태그 만 첫 번째 uid 다음에 그 다음 표시 치명적 오류 : 알 수없는 OAuthException : (# 100) 잘못된 매개 변수이며 아래 코드 x 및 y 에서처럼 태그 지정에 정확한 위치를 사용할 수 있습니까? 값은 픽셀 단위입니다.Facebook 그림에 친구 표시하기

$facebook = new Facebook (array (
     'appId' => FBAPPID, 
     'secret' => FBSECRETID 
)); 
$facebook->setFileUploadSupport (true); 
if (isset ($_POST ['image']) && isset ($_POST ['tname'])) { 

    $path_to_image = encrypt::instance()->decode ($_POST ['image']); 
    $tags = (array)encrypt::instance()->decode ($_POST ['tname']); 
    /* 
    * Output 
    $tags = array (
      0 => '[{"tag_uid":"100001083191675","x":100,"y":100},{"tag_uid":"100001713817872","x":100,"y":230},{"tag_uid":"100000949945144","x":100,"y":360},{"tag_uid":"100001427144227","x":230,"y":100},{"tag_uid":"100000643504257","x":230,"y":230},{"tag_uid":"100001155130231","x":230,"y":360}]' 
     ); 
    */ 

    $args = array (
      'message' => 'Von ', 
      'source' => '@' . $path_to_image, 
      'access_token' => $this->user->fbtoken 
    ) 
    ; 
    $photo = $facebook->api ($this->user->data->fbid . '/photos', 'post', $args); // upload works but not tags 

    if (is_array ($photo) && ! empty ($photo ['id'])) { 
     echo 'Photo uploaded. Check it on Graph API Explorer. ID: ' . $photo ['id']; 
     foreach ($tags as $key => $t) { 
      $tagRe = json_encode ($t); 
      $args = array (
        'tags' => $tagRe, 
        'access_token' => $this->user->fbtoken 
      ); 
      $facebook->api ('/' . $photo ['id'] . '/tags', 'post', $args); 
     } 
    } 
} 
+0

이 링크를 참조 할 수 있습니다. 그것은 당신에게 도움이 될 것입니다. [1] : http://stackoverflow.com/questions/22833253/simple-image-tagging-page-like-facebook-image-tag/23129551#23129551 –

답변

0

내가 얻지 못하는 것이 하나 있습니다.

foreach 태그가 맞지 않습니까? foreach에서 array으로 다시 전달 하시겠습니까? 너보다 encode? 왜?

두 번째 코드는 더 자세한 정보와 코드를 제공해주십시오.

나는 이러한 세부 사항으로 만 당신을 도울 수 있습니다.

다음 코드를 입력하면.

foreach ($tags as $t) { 
     echo "<pre>"; 
     print_r(json_encode($t)); 
    } 

당신은

// encoded to json 
{"tag_uid":"100001701664011","x":100,"y":100} 
{"tag_uid":"100001726935992","x":100,"y":230} 
{"tag_uid":"100001628449733","x":100,"y":360} 
{"tag_uid":"100001286641924","x":230,"y":100} 
{"tag_uid":"100001785887853","x":230,"y":230} 

은 그래서 당신은 단지 변수에 t을 전달하고 거기 인코딩이

foreach ($tags as $t) { 
     $tagRes = json_encode($t); 
    } 

수행에 필요한 다음과 같은 결과를 얻을 것이다.

더 많은 코드를 입력하십시오.

+0

더 많은 코드를 추가했습니다 ... 요청한 태그가 있습니다. 작동하지 않음 –

+0

도움을 주셔서 감사합니다. –