Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- // set your path to Zend if you need it
- $path = realpath('/home/piers/code/');
- set_include_path($path . PATH_SEPARATOR . get_include_path());
- require_once 'Zend/Oauth/Consumer.php';
- session_start();
- // set your Google consumer key / secret
- $CONSUMER_KEY = 'your-consumer-key';
- $CONSUMER_SECRET = 'your-consumer-secret';
- $RETURN_TO = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME'];
- // Multi-scoped token.
- $SCOPES = array(
- 'http://tables.googlelabs.com/api/query',
- );
- $oauthOptions = array(
- 'requestScheme' => Zend_Oauth::REQUEST_SCHEME_HEADER,
- 'version' => '1.0',
- 'consumerKey' => $CONSUMER_KEY,
- 'consumerSecret' => $CONSUMER_SECRET,
- 'signatureMethod' => 'HMAC-SHA1',
- 'callbackUrl' => $RETURN_TO,
- 'requestTokenUrl' => 'https://www.google.com/accounts/OAuthGetRequestToken',
- 'userAuthorizationUrl' => 'https://www.google.com/accounts/OAuthAuthorizeToken',
- 'accessTokenUrl' => 'https://www.google.com/accounts/OAuthGetAccessToken'
- );
- $consumer = new Zend_Oauth_Consumer($oauthOptions);
- if (!isset($_SESSION['REQUEST_TOKEN'])) {
- $_SESSION['REQUEST_TOKEN'] = serialize($consumer->getRequestToken(array('scope' => implode(' ', $SCOPES))));
- $approvalUrl = $consumer->getRedirectUrl(array('hd' => 'default'));
- echo "<a href=\"$approvalUrl\">Grant access</a>";
- exit(0);
- }
- if (!isset($_SESSION['ACCESS_TOKEN'])) {
- if (!empty($_GET) && isset($_SESSION['REQUEST_TOKEN'])) {
- $_SESSION['ACCESS_TOKEN'] = serialize($consumer->getAccessToken($_GET, unserialize($_SESSION['REQUEST_TOKEN'])));
- }
- }
- $accessToken = unserialize($_SESSION['ACCESS_TOKEN']);
- unset($_SESSION['REQUEST_TOKEN']);
- unset($_SESSION['ACCESS_TOKEN']);
- require_once 'Zend/Gdata/Gbase.php';
- require_once 'Zend/Gdata/Query.php';
- $httpClient = $accessToken->getHttpClient($oauthOptions);
- $gdata = new Zend_Gdata_Gbase($httpClient, 'fusiontables');
- $url = "http://tables.googlelabs.com/api/query?sql=show%20tables";
- $data = $gdata->get($url);
- echo "<pre>";
- var_dump($data);
- echo "</pre>\n";
- exit(0);
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement