2017-03-08 1 views
0

Ich habe eine Immobilien-Website, auf der ich mehrere Eigenschaften aufgeführt habe. Jede Unterkunft verfügt über einen Google-Kalender. Wenn die Unterkunft an diesem bestimmten Tag gebucht wird, wird an diesem Tag eine Notiz für diesen bestimmten Kalender hinzugefügt.Einfaches Beispiel der Google Kalender-API mit Google API PHP-Client

Ich machte das alles manuell, wo ich den HTML der Website aktualisiert habe, indem ich die Verfügbarkeit mit einem Layout wie diesem zeigte.

enter image description here

Jetzt versuche ich all dies mit dem Google Kalender API automatisiert zu machen, wo ich die Buchung der einzelnen Häuser in einem Kalender oben wie das Beispiel angezeigt werden kann.

Ich versuche, die Google API PHP-Client-Bibliothek verwendet werden, das hier bei https://github.com/google/google-api-php-client

Mein größten Problem liegt, ist, dass ich nicht in der Lage jeden Grund Beispiel dafür über das Internet auch zu finden. Google-Seiten zeigen nicht die vollständigen Beispiele.

Zum Beispiel zeigt die Hilfeseite von Google nur ein Beispiel für "Bücher", die ich überhaupt nicht brauche.

Ich habe überall im Internet nach einigen grundlegenden Beispielen des Codes gesucht, aber nicht in der Lage, es überhaupt zu finden. Ich suche stackoverflow selbst, aber alle Codes, die ich gefunden habe, sind wirklich verwirrend und alle von ihnen sind unterschiedlich.

Darüber hinaus "wissen" die meisten von ihnen schon, es gibt keine Möglichkeit zu verstehen, was erforderlich ist.

Wenn jemand ein einfaches Beispiel hat, wo ich Ereignisse eines Tages eines Kalenders ziehen kann, bitte posten Sie es hier.

Auch wenn Sie eine andere Möglichkeit kennen, um die Verfügbarkeit wie das Bild oben anzuzeigen, wäre eine große Hilfe!

Danke.

+0

Folgen Sie der Dokumentation https://developers.google.com/google-apps/calendar/quickstart/php und teilen Sie uns eventuelle Fehler mit. – Morfinismo

+0

Beantworten Sie die Frage nach dem Lesen es Kerl .... –

+0

Ich tat. Ich versuche nur dir zu helfen. Erwarte nicht, dass wir alles für dich tun, wenn du noch nicht wenigstens etwas ausprobiert hast und den Code, den du benutzt, postest. Vielleicht kann Ihnen dieser Beitrag eine Idee geben http://stackoverflow.com/questions/42177931/google-calendar-api-get-events-on-current-week. Viel Glück! – Morfinismo

Antwort

1

Was zum Teufel, ich eine Antwort umbuchen werde ich von this question gab:

if($refresh_token_accessed_from_my_database) { 
      //If session contains no valid Access token, get a new one 
      if ($client->isAccessTokenExpired()) { 
       $client->refreshToken($refresh_token_accessed_from_my_database); 
      } 
      //We have access token now, launch the service 
      $this->service = new Google_Service_Calendar($client); 
     } 
     else { 
      //User has never been authorized, so let's ask for the ok 
      if (isset($_GET['code'])) { 
       //Creates refresh and access tokens 
       $credentials = $client->authenticate($_GET['code']); 

       //Store refresh token for further use 
       //I store mine in the DB, I've seen others store it in a file in a secure place on the server 
       $refresh_token = $credentials['refresh_token']; 
       //refresh_token->persist_somewhere() 

       //Store the access token in the session so we can get it after 
       //the callback redirect 
       $_SESSION['access_token'] = $client->getAccessToken(); 
       $redirect_uri = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']; 
       header('Location: ' . filter_var($redirect_uri, FILTER_SANITIZE_URL)); 
      } 

      if (!isset($_SESSION['access_token'])) { 
       $auth_url = $client->createAuthUrl(); 
       header('Location: ' . filter_var($auth_url, FILTER_SANITIZE_URL)); 
      } 

      if (isset($_SESSION['access_token']) && $_SESSION['access_token']) { 
       $client->setAccessToken($_SESSION['access_token']); 
       $this->service = new Google_Service_Calendar($client); 
      } 

Als ich mein Projekt baute ich aus dem Tutorial Morfinismo Post in den Kommentaren begonnen, aber ich hatte nach ein paar Problemen Das hier. Ich habe Kommentare geschrieben, um den allgemeinen Ablauf und einige mögliche Problempunkte zu beschreiben. Vielleicht möchten Sie diese Notizen mit dem anderen Tutorial vergleichen, wenn Sie sich nicht allzu genau darüber im Klaren sind, was vor sich geht.

Verwandte Themen