문제

나는 친구들이 그들에게 가고있는 이벤트를 Facebook에서 얻고 싶다. 예를 들어

  1. eventId1 (friend1, friend2, friend3)
  2. eventId2 (friend10, friend55);

등등...

어떻게 달성 할 수 있습니까?

리플레이에 감사드립니다.

도움이 되었습니까?

해결책

한 가지 방법은 이벤트를 얻는 것이 FQL을 사용하는 것입니다. 친구들이 참석할 모든 이벤트를 얻을 수있는 방법은 다음과 같습니다.

SELECT name FROM event WHERE eid IN (SELECT eid from event_member WHERE uid IN (SELECT uid2 FROM friend WHERE uid1=''$user_id'') )

여기에 추가 :

여기 더

다른 팁

Sarfaz의 답변 확장 :

각 친구에 대해 다음 쿼리를 사용하십시오.

SELECT name FROM event WHERE eid IN (SELECT eid from event_member WHERE uid = $friend_uid )

그것은 친구가 참석하는 정확한 이벤트 목록을 반환합니다. 그런 다음 해당 친구 목록을 구문 분석하고 데이터의 역전 된 맵을 만들기 위해 참석 한 이벤트를 수집하십시오.

내 경험 에서이 FQL 쿼리는 실행하는 데 오랜 시간이 걸립니다. 특히 각 친구마다 여러 번 실행하려는 경우. FBML 앱을 사용하는 경우 Facebook 타임 아웃에 지치십시오. 그렇지 않으면이 호출을 배치 할 수 있습니다.

그만큼 API 이벤트가 말합니다. 각 친구의 UID를 통과하고 돌아 오는 이벤트 ID를 통합하십시오.

편집 : Sarfraz는 여기에서 더 나은 답변을 얻을 수 있습니다. FQL에 대한 한 번의 호출은 더 효과적입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top