При получении данных пользователя в приложении Facebook iFrame с использованием users_getInfo () результат не отображается - PullRequest
0 голосов
/ 20 июля 2010

Я пишу iframe Facebook / приложение Facebook Connect с клиентской библиотекой PHP, и на одной из страниц мне нужно получить текущее местоположение пользователя, город или страну.

Я добавил «Запрос на разрешение» для всех возможных данных в моем индексном файле.

 $user_id = $facebook->require_login($required_permissions = 'user_location,publish_stream,email,read_stream,user_about_me,user_activities,user_birthday,user_hometown,user_interests,user_likes,user_status);

Это код, который я использую в своем приложении,

 $userInfo = $facebook->api_client->users_getInfo($user_id, array('current_location'));
var_dump($userInfo);
$location = ($userInfo[0]) ? $userInfo[0]['current_location'] : $userInfo['current_location']; 
echo "UserInfo : ".$location;

Результат var_dump ($ userInfo) равен string(0)"", а эхо $ location пусто.

Пожалуйста, кто-нибудь, помогите мне.

1 Ответ

1 голос
/ 20 июля 2010

Это потому, что вы сделали ошибку при копировании примера. У вас неверная подпись метода.

// Your version
$facebook->api_client->users_getInfo($user_id,'last_name','first_name');

// From the example
$facebook->api_client->users_getInfo($uid, 'last_name, first_name'); 

Видишь разницу? Это только два параметра - 2-ой - список имен полей, разделенных запятыми.

Итак, поскольку вы неправильно запрашиваете поле first_name из API, оно не доступно в ответе.

Отсюда и ошибка при попытке прочитать.

...