Google Api : Passer une variable dans le redirect uri

Mammouth du PHP | 1339 Messages

13 nov. 2015, 12:39

Bonjour,

J'ai mis en place un système pour rajouter des informations dans l'agenda d'un visiteur.
Le problème c'est que je passe l'iD de l'informations dans une variable $_SESSION car je n'ai pas trouvé comment passer cette variable dans l'url.

Comment faire pour avoir plusieurs lien d'ajout dans le calendrier sur la même page ?
// Google Agenda
	include('include/class/google/src/Google/autoload.php');
	
	$client = new Google_Client();
	$client->setApplicationName("Ajouter la réservation à son Google Agenda");
	$client->setAuthConfigFile('client_secrets.json');
	$client->setRedirectUri($basehref.'google-calendar.php'); // J'aimerai par exemple rajouter un ?id=X mais du coup l'url n'est plus reconnu comme valide pour Google Console
	$client->setAccessType('offline');   // Gets us our refreshtoken	
	
	$client->setScopes(array('https://www.googleapis.com/auth/calendar'));
Dans google-agenda.php j'ai le code qui vérifie si la variable $_GET['code'] est correcte :
// ********************************************************  //
		// Get these values from https://console.developers.google.com
		// Be sure to enable the Analytics API
		// ********************************************************    //
	
		$client = new Google_Client();
		$client->setApplicationName("Ajouter la réservation à son Google Agenda");
		$client->setAuthConfigFile('client_secrets.json');
		$client->setRedirectUri($basehref.'google-calendar.php');
		$client->setAccessType('offline');   // Gets us our refreshtoken
	
		$client->setScopes(array('https://www.googleapis.com/auth/calendar'));
		
		// Step 2: The user accepted your access now you need to exchange it.
		if(isset($_GET['code'])) {	
		
			$client->authenticate($_GET['code']);  
			$_SESSION['google_token'] = $client->getAccessToken();
			
			$client->setAccessToken($_SESSION['google_token']);
		
			$service = new Google_Service_Calendar($client);
Je continue a chercher mais je bloque un peu là.
Bon sinon tu me fais un message privé et on se fait un TeamViewer