PDA

View Full Version : [PHP] google api


Bigbet
03-02-2013, 13:51
Ciao
per sincronizzare il mio database con il calendario di google vorrei usare il codice di seguito che ho trovato googolando. Il problema è che non mi funziona. Se lo inserisco nel mio server web e ci punto il browser il risultato è una pagina bianca a prescindere da cosa metto al posto dei ????.
Mi sapete dire dove sbaglio?
Devo avere qualche accortezza nella conf del lamp?
Mi sapete dire dove reperire il setRedirectUri?




<?php
require_once 'gestione/api/google-api-php-client/src/apiClient.php';
require_once 'gestione/api/google-api-php-client/src/contrib/apiCalendarService.php';
session_start();


$client = new apiClient();
$client->setApplicationName("????");
$client->setClientId('email');
$client->setClientSecret('pwdemail');
$client->setRedirectUri('?????');
$client->setDeveloperKey('AIza???????26M0ob-SJw????3-????nCDC-??????');

$cal = new apiCalendarService($client);
if (isset($_GET['logout'])) {
unset($_SESSION['token']);
}

if (isset($_GET['code'])) {
$client->authenticate();
$_SESSION['token'] = $client->getAccessToken();
header('Location: http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']);
}

if (isset($_SESSION['token'])) {
$client->setAccessToken($_SESSION['token']);
}

if ($client->getAccessToken()) {


$calList = $cal->calendarList->listCalendarList();

print "********** ma connexion est OK ******************<br>";


//******************************************************* TEST ****

$event = new Event();
$event->setSummary('titre de l'evenement');
$event->setLocation('La Rochelle');
$service = new apiCalendarService($client);

$start = new EventDateTime();
$start->setDateTime('2013-02-02T10:00:00');
$event->setStart($start);

$end = new EventDateTime();
$end->setDateTime('2013-02-02T13:25:00');
$event->setEnd($end);

$attendee1 = new EventAttendee();
$attendee1->setEmail('xxxx@xxxx.it');
$attendees = array($attendee1);
$event->attendees = $attendees;

$createdEvent = $service->events->insert( $client, $event);

echo $createdEvent->getId();



$_SESSION['token'] = $client->getAccessToken();
}
else {
$authUrl = $client->createAuthUrl();
print "<a class='login' href='$authUrl'>Connect Me!</a>";
}


?>

Bigbet
09-02-2013, 16:22
mi andrebbe bene anche un altro metodo, mi basta raggiungere lo scopo

The_ouroboros
10-02-2013, 17:42
ma dall'help delle API non trovi nulla?

P.S: metti il codice identato nei tag giusti, please :fagiano:

Bigbet
11-02-2013, 13:27
ma dall'help delle API non trovi nulla?

P.S: metti il codice identato nei tag giusti, please :fagiano:

ho controllato ma lascia scontato cose che in realtà non so.
A prescindere non riesco neanche un minimo di debug perchè non mi visualizza proprio nulla. L'ho provato su vari server web con il medesimo risultato.
Ormai sono mesi che faccio tentativi. Probabilmente è una carenza conoscitiva mia perchè effettivamente la documentazione di google è piuttosto ampia.

:help: