probleme php graph v5 facebook

Par AaFrederic Husson, il y a 8 ans


Bonjour,

j'utilise facebook login avec php graph v5 et j'obtient l'erreur suivante:

Fatal error: Uncaught exception 'Facebook\Exceptions\FacebookSDKException' with message 'Cross-site request forgery validation failed. The "state" param from the URL and session do not match.' in C:\wamp64\www\soshomepc\vendor\facebook\graph-sdk\src\Facebook\Helpers\FacebookRedirectLoginHelper.php on line 251

voici mon code:

<?php require 'vendor/autoload.php'; use \Facebook\Facebook; $fb = new Facebook([ 'app_id' => 'xxx', // Ici votre appId 'app_secret' => 'xxx', // Ici votre appSecret 'default_graph_version' => 'v2.2', ]); $helper = $fb->getRedirectLoginHelper(); // On sélectionne les autorisations (la on demande juste l'email et la ville actuelle) $permissions = ['email', 'user_location']; // Ici on choisi l'url de redirection $loginUrl = $helper->getLoginUrl('http://sos-home-pc.loc/index.php', $permissions); // On affiche le lien de connection echo '<a href="'. htmlspecialchars($loginUrl) .'">Connection avec Facebook</a>'; $accessToken = $helper->getAccessToken(); ?>

4 réponses

AaFrederic Husson, il y a 8 ans

c'est bon ça fonctionne j'avais oublié de rajouter un session_statrt() au début du script

par contre impossible de récupérer la ville de l'user

$response = $fb->get('/me?fields=name,first_name,last_name,email,gender,picture,city', $accessToken); $user = $response->getGraphNode(); echo '<br>Votre adresse e-mail: ' . $user['email']; echo '<br>Votre nom: ' . $user['last_name']; echo '<br>Votre prénom: ' . $user['first_name']; echo '<br>Votre adresse: ' . $user['city'];
karma13, il y a 8 ans

Vérifies le contenu de $user['city'] , en faisant var_dump( $user );

karma13, il y a 8 ans

Bonjour, as-tu renseigné les paramètres d'identification comme indiqué sur les commentaires?

AaFrederic Husson, il y a 8 ans

j'ai ce message d'erreur en fait:

Fatal error: Uncaught exception 'Facebook\Exceptions\FacebookAuthenticationException' with message '(#100) Tried accessing nonexisting field (city) on node type (User)' in C:\wamp64\www\soshomepc\vendor\facebook\graph-sdk\src\Facebook\Exceptions\FacebookResponseException.php on line 106