IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Facebook Discussion :

Graph API : certaines requêtes retournent un tableau vide


Sujet :

Facebook

  1. #1
    Invité
    Invité(e)
    Par défaut Graph API : certaines requêtes retournent un tableau vide
    Bonjour,

    J'espère que quelqu'un sera capable de m'aider à résoudre mon problème.
    On ne peut pas dire que les forums officiels de Facebook soient d'une très grande aide...

    Je vous expose mon soucis.
    Dans deux applications, j'exécute des requêtes avec la Graph API.
    Dans l'une d'elle, il s'agit de faire un friends request, c-à-d d'envoyer une invitation à ses amis pour utiliser l'application.
    Dans la deuxième, je me penche sur Facebook Place et la récupération de l'ensemble des informations liées à un lieu.
    Ces deux applications ne sont que de simples tests de fonctionnalités.

    Pour chacune, je lance une requête Graph (https://graph.facebook.com) après avoir demandé les droits nécessaires à l'utilisateur.
    Seulement ces requêtes me retournent la plupart du temps un résultat vide. Un tableau "data" ne contenant aucune donnée.

    J'ai fouillé un peu sur le net. Certains disent que c'est une histoire de droits donnés à l'application. Hors je demande les droits nécessaires.
    D'autres encore qu'il faut aimer (liker) la page. Après tests, cela ne change rien.
    Enfin qu'il faut fournir un access_token. Chose faite... pas d'améliorations...


    En terme d'exemple, je prend ma deuxième application (sur Facebook Place).
    Celle-ci demande à l'utilisateur les droits user_checkins et friends_checkins.
    Le but est de pouvoir récupérer, pour un lieu donné, les informations des utilisateurs qui y ont été tagués (je ne sais pas si c'est bien clair...). Email principalement.
    Hors je ne reçois qu'un tableau vide...

    J'ai effectué les tests avec les différents SDK : PHP, Javascript et même en requête FQL pour chacun d'eux. Toujours un résultat vide...

    Voici ce que cela me donne (en me rendant directement sur le lien - résultat JSON) :

    Honnêtement je ne sais plus où chercher... Et ce n'est pas faute d'avoir parcouru Google

    Pour information, voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
    	<head>
    		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    	</head>
    	<body>
    		<h1>Test Facebook Place</h1>
    		<p>Cette application permet de récupérer les personnes s'étant rendu à un lieu, ou ayant été taguée à ce lieu.<br />
    		Pour cela, l'utilisateur de l'application doit donner les permissions nécessaires pour accéder à ces informations.</p>
    
    		<hr />
    		
    		<div id="place">
    			<h2 class="name"></h2>
    			<img src="" alt="Logo place" /> 
    			<br />
    			<span class="description"></span>
    			<br />
    			Nombre de personnes : <span class="counter"></span>
    		</div>
    		<fb:like href="http://apps.facebook.com/test_fbplace/" show_faces="true" width="450" font=""></fb:like>
    <?php
    	include("libs/Facebook.inc.php");
    	
    	$oFB = new Facebook( array(
    		'appId'		=> 	'xxxxxxx',
    		'secret'	=>	'xxxxxx',
    		'cookie'	=> 	true
    	));
    	
    	$datas = $oFB->api("/me/200675129953156/checkins?access_token=".$oFB->getAccessToken() );
    	
    	echo '<pre>'.var_dump($datas).'</pre>';
    ?>
    		<div id="fb-root"></div>
    		<script src="./js/jquery.js" type="text/javascript"></script>
    		<script src="http://connect.facebook.net/fr_FR/all.js"></script>
    		<script>
    			FB.init({
    				appId  : 'xxxxxx',
    				status : true, // check login status
    				cookie : true, // enable cookies to allow the server to access the session
    				xfbml  : true  // parse XFBML
    			});
    	
    			$(document).ready(function() {				
    				/*FB.login(function(response){
    						if(response.session) {
    							if(response.perms){
    								alert(response.session.access_token);
    								// On recupere les infos publiques de la page FB Place
    								FB.api("/200675129953156", function(response) {
    									$("#place > img").attr('src', response.picture); // L'image représentant le lieu
    									$("#place > .name").text(response.name); // Le nom du lieu
    									$("#place > .description").text(response.description); // La description du lieu
    									$("#place > .counter").text(response.checkins); // Le nombre de checkins pour ce lieu
    								});
    							} else {
    								FB.ui({method: 'oauth', client_id:'xxxxxx', scope: 'email,user_checkins'});
    							}
    						}
    					},
    					{ perms: "user_checkins,friends_checkins,email" }
    				);*/
    				
    				FB.api("/200675129953156", function(response) {
    									$("#place > img").attr('src', response.picture); // L'image représentant le lieu
    									$("#place > .name").text(response.name); // Le nom du lieu
    									$("#place > .description").text(response.description); // La description du lieu
    									$("#place > .counter").text(response.checkins); // Le nombre de checkins pour ce lieu
    								});
    			});
    		</script>
    	</body>
    </html>
    Merci d'avance

  2. #2
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2011
    Messages : 7
    Points : 7
    Points
    7
    Par défaut
    slt,

    moi aussi je veux créer une application facebook avec laquelle je pourrais récupérer les checkin des amis, enfait je voulais essayer d'abords un truc simple comme afficher juste le nom avec $me=$fb->api('/me') et puis echo $me['name'] sauf que ça ne marche pas et le code apres le "$me=$fb->api('/me')" n'est as executé !! est ce que toi t'as reussi à faire ça ou pas??

    Merci.

Discussions similaires

  1. [PDO] PDO : Insérer le résultat retourné par une requête dans un tableau
    Par Encephalopatie dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 17/01/2015, 15h22
  2. Fonction: retourner un tableau vide
    Par cheickna dans le forum Collection et Stream
    Réponses: 18
    Dernier message: 05/03/2014, 14h49
  3. [MySQL] Requête retourne un résultat vide dans PHP, OK dans PhpMyAdmin
    Par Lomic dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 10/01/2014, 18h00
  4. Réponses: 4
    Dernier message: 20/08/2011, 16h44
  5. CaptureDeviceManager.getDeviceList Retourne un tableau vide
    Par franckarts dans le forum Multimédia
    Réponses: 0
    Dernier message: 01/08/2010, 15h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo