Buenas tardes a todos..
Estoy desarrollando una aplicación con facebook connect, donde pido varios permisos y los cuales todo se otorga correctamente, el problema es que una ves logueado lo que hago es guardar en una variable todo lo que obtiene del /me y luego con un print_r() lo muestro todo, pero mi sorpresa es que en ves de mostrar todo lo que pido solo me muestra el nombre y apellido y la id del usuario de facebook nada mas.
Si pongo /me/friends me sale el data vacio y nada mas el total de amigos que tengo. es algo muy raro realmente.
Espero entiendan bien el problema, pueden probarlo acá: https://www.netlize.com/facebook.php
La aplicacion no publica nada ni nada solo pide permiso, loguea y muestra nada mas.
No muestra todo, pero tan.
Este es el codigo completo:
Código:
<?php
require './facebook/facebook.php';
$facebook = new Facebook(array(
'appId' => '****************',
'secret' => '******************************',
'cookie' => true
));
// See if there is a user from a cookie
$user = $facebook->getUser();
if ($user) {
try {
// Proceed knowing you have a logged in user who's authenticated.
$user_permissions = $facebook->api('/me/permissions');
$user_friends = $facebook->api('/me/friends');
$user_date = $facebook->api('/me');
} catch (FacebookApiException $e) {
$user = null;
}
}
?>
<!DOCTYPE html>
<html xmlns:fb="http://www.facebook.com/2008/fbml">
<body>
<?php if ($user) { ?>
<table>
<tr>
<td>Mis datos</td>
<td>Mis amigos</td>
<td>Mis permisos</td>
</tr>
<tr>
<td>
<pre>
<?php print_r($user_date); ?>
</pre>
</td>
<td>
<pre>
<?php print_r($user_friends); ?>
</pre>
</td>
<td>
<pre>
<?php print_r($user_permissions); ?>
</pre>
</td>
</tr>
</table>
<?php } else { ?>
<!--fb:login-button></fb:login-button-->
<script type="text/javascript">
// Only works after `FB.init` is called
function myFacebookLogin() {
FB.login(function(){
//FB.api('/me/feed', 'post', {message: 'Hello, world!'});
}, {scope: 'email,user_likes,user_friends,user_birthday,user_location,publish_actions'});
}
</script>
<button onclick="myFacebookLogin()">Login with Facebook</button>
<?php } ?>
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({
appId: '<?php echo $facebook->getAppID() ?>',
cookie: true,
xfbml: true,
oauth: true
});
FB.Event.subscribe('auth.login', function(response) {
window.location.reload();
});
FB.Event.subscribe('auth.logout', function(response) {
window.location.reload();
});
};
(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol +
'//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
</script>
</body>
</html>
Ese es todo el código actual de el archivo anteriormente pasado.
Dejo adjunto los require_once que hace al principio.
https://github.com/facebookarchive/facebook-php-sdk/tree/master/src
Esos son los archivos que utilizo.
Espero me puedan ayudar, gracias.