Autor Zpráva
David1256
Profil
Dobrý den,

snažím se rozchodit Google Calendar API. Postupoval jsem prvně podle tohoto návodu, který jsem prošel bez potíží a vše fungovalo, jak návod popisoval. Pak jsem pokračoval podle tohoto návodu a tam jsem se už zasekl. Chtěl jsem vytvořit první návodem popisovanou ukázku Google Calendar API v praxi a sice authentifikaci uživatele, ale neuspěl jsem. Po spuštění tohoto skriptu

<?php
$clientLibraryPath = 'phpGoogle/library';
$oldPath = set_include_path(get_include_path() . PATH_SEPARATOR . $clientLibraryPath);
require_once 'Zend/Loader.php';
Zend_Loader::loadClass('Zend_Gdata');
Zend_Loader::loadClass('Zend_Gdata_AuthSub');
Zend_Loader::loadClass('Zend_Gdata_ClientLogin');
Zend_Loader::loadClass('Zend_Gdata_Calendar');
function getAuthSubUrl()
{
  $next = getCurrentUrl();
  $scope = 'https://www.google.com/calendar/feeds/';
  $secure = false;
  $session = true;
  return Zend_Gdata_AuthSub::getAuthSubTokenUri($next, $scope, $secure,
      $session);
}

$authSubUrl = getAuthSubUrl();
echo "<a href=\"$authSubUrl\">login to your Google account</a>"; 
?>
mi to vyhodilo chybu Fatal error: Call to undefined function getCurrentUrl() in /data16/someURL/calendar.php on line 11

Myslel jsem původně, že si tedy Google Calendar bere funkce z phpGoogle/library/Zend/Loader.php, ale tam jsem funkci getCurrentUrl() ani getAuthSubUrl() nenašel, tak bych rád zjistil, kde dělám chybu, respektive kde jsou ty funkce na Google Calendar API nadefinovány. Snad tu již někdo Google Calendar API používal a třeba mi poradíte.

Díky.
Rfilip
Profil
getAuthSubUrl() je v kodu co jsi poslal na 9 řádku.
getCurrentUrl() -viz next is the URL of the current page (obtained by examining $_SERVER variables for HTTP_POST, SERVER_PORT, HTTPS and REQUEST_URI) (to je v tvém druhém návodu)takže použij tuto:
getCurrentUrl()
{
return  "http" . (($_SERVER["HTTPS"] == "on") ? "s://" : "://") . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
}
David1256
Profil
Rfilip:
Díky.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: