<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ca">
	<id>http://wiki.joanillo.org/index.php?action=history&amp;feed=atom&amp;title=Google_Docs._Programaci%C3%B3_amb_les_API</id>
	<title>Google Docs. Programació amb les API - Historial de revisió</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.joanillo.org/index.php?action=history&amp;feed=atom&amp;title=Google_Docs._Programaci%C3%B3_amb_les_API"/>
	<link rel="alternate" type="text/html" href="http://wiki.joanillo.org/index.php?title=Google_Docs._Programaci%C3%B3_amb_les_API&amp;action=history"/>
	<updated>2026-08-30T08:40:17Z</updated>
	<subtitle>Historial de revisió per a aquesta pàgina del wiki</subtitle>
	<generator>MediaWiki 1.34.2</generator>
	<entry>
		<id>http://wiki.joanillo.org/index.php?title=Google_Docs._Programaci%C3%B3_amb_les_API&amp;diff=257778&amp;oldid=prev</id>
		<title>Joan: /* Entrega */</title>
		<link rel="alternate" type="text/html" href="http://wiki.joanillo.org/index.php?title=Google_Docs._Programaci%C3%B3_amb_les_API&amp;diff=257778&amp;oldid=prev"/>
		<updated>2018-09-20T15:33:21Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Entrega&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Pàgina nova&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=Referències i Introducció=&lt;br /&gt;
&lt;br /&gt;
Developers Guide Overview:&lt;br /&gt;
*http://code.google.com/intl/es-ES/apis/gdata/docs/developers-guide.html&lt;br /&gt;
&lt;br /&gt;
Client Libraries (llenguatges de programació amb què podem programar):&lt;br /&gt;
*http://code.google.com/intl/es-ES/apis/gdata/docs/client-libraries.html&lt;br /&gt;
&lt;br /&gt;
List API:&lt;br /&gt;
*http://code.google.com/intl/es-ES/apis/documents/&lt;br /&gt;
&lt;br /&gt;
Spreadsheets API:&lt;br /&gt;
*http://code.google.com/intl/es-ES/apis/spreadsheets/&lt;br /&gt;
*video: http://www.youtube.com/v/HUxxoFeJ0VA?version=3&amp;amp;feature=player_embedded&lt;br /&gt;
&lt;br /&gt;
Access Google's Data APIs from your PHP 5:&lt;br /&gt;
*http://framework.zend.com/download/gdata&lt;br /&gt;
&lt;br /&gt;
'''NOTA''' (actualització febrer 2013)&lt;br /&gt;
&lt;br /&gt;
Les Google Documents API estan ''deprecated'', doncs ara el concepte actual és '''Google Drive''', que té les seves API:&lt;br /&gt;
*https://developers.google.com/drive/?hl=es-ES&lt;br /&gt;
Per tant, aquest és el document actual per fer la pràctica el curs 2012-2013.&lt;br /&gt;
&lt;br /&gt;
Com veiem, podem utilitzar diferents llenguatges de programació. Concretament, a nosaltres ens interessa PHP, i d'aquesta manera podem integrar Google Drive dins les nostres aplicacions PHP:&lt;br /&gt;
*https://developers.google.com/drive/examples/php?hl=es-ES&lt;br /&gt;
&lt;br /&gt;
=Desenvolupament=&lt;br /&gt;
Farem una pràctica accedint a les API de Google des de PHP. Seguirem: Access Google's Data APIs from your PHP 5:&lt;br /&gt;
*http://framework.zend.com/download/gdata&lt;br /&gt;
&lt;br /&gt;
Descarreguem '''Zend Gdata''' versió 1.11.11&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
INSTALLATION&lt;br /&gt;
------------&lt;br /&gt;
&lt;br /&gt;
Zend Framework requires no special installation steps. Simply download&lt;br /&gt;
the framework,&lt;br /&gt;
extract it to the folder you would like to keep it in, and add the&lt;br /&gt;
library directory&lt;br /&gt;
to your PHP include_path. To use components in the extras library, add&lt;br /&gt;
the extras/library&lt;br /&gt;
directory to your PHP include_path, as well.&lt;br /&gt;
If you would like to use Zend_Tool, simply add bin/zf.bat (for Windows) or&lt;br /&gt;
bin/zf.sh (for anything else) to your system executable path.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Com que aquesta llibreria que hem descarregat conté exemples PHP, anem a fer-los funcionar. El primer que hem de fer és localitzar el directori arrel del nostre servidor Apache (http://localhost, allà on posa ''It works!''), i descomprimir en aquest directori la llibreria.&lt;br /&gt;
&lt;br /&gt;
Hem de veure com podem navegar per la carpeta demos/:&lt;br /&gt;
*http://localhost/ZendGdata-1.11.11/demos/Zend/Gdata/&lt;br /&gt;
&lt;br /&gt;
Em centro en el document Docs.php. L'obrim en un editor de text per poder veure el codi, i l'executem en el navegador web.&lt;br /&gt;
*http://localhost/ZendGdata-1.11.11/demos/Zend/Gdata/Docs.php&lt;br /&gt;
&lt;br /&gt;
Segur que no funciona, sense fer res no podem carregar la pàgina Docs.php. Allò bo és tenir configurat l'Apache per veure els warnings:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Warning: require_once(Zend/Loader.php) [function.require-once]: failed&lt;br /&gt;
to open stream: No such file or directory in&lt;br /&gt;
/var/www/ZendGdata-1.11.11/demos/Zend/Gdata/Docs.php on line 50&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Si no veiem els warnings i la pàgina es mostra en blanc podem consultar el fitxer /var/log/apache2/error.log per veure la mateixa informació:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ joe /var/log/apache2/error.log&lt;br /&gt;
...&lt;br /&gt;
[Fri Feb 10 00:48:45 2012] [error] [client ::1] PHP Fatal error:  require_once(): Failed opening required 'Zend/Loader.php' (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/ZendGdata-1.11.11/demos/Zend/Gdata/Docs.php on line 50, referer: http://localhost/Zend&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Tot això ja està explicat a [[Llenguatges_de_guions_de_servidor._PHP._Introducció#Gesti.C3.B3_dels_errors_i_logging]]&lt;br /&gt;
&lt;br /&gt;
Veiem que dins el codi tenim la línia:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
require_once 'Zend/Loader.php';&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
i aquesta és la llibreria que no sap trobar. Per tant, com diu les instruccions d'instal.lació, hem d'incloure la llibreria en el PHP include_path.&lt;br /&gt;
&lt;br /&gt;
El fitxer ''Loader.php'' està a ''/var/www/ZendGdata-1.11.11/library/Zend'', i per tant el nostre include_path està a:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
include_path = &amp;quot;.://var/www/ZendGdata-1.11.11/library&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Això es pot fer de vàries maneres, però el més normal és editar el fitxer '''php.ini'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ locate php.ini&lt;br /&gt;
/etc/php5/apache2/php.ini&lt;br /&gt;
/etc/php5/cli/php.ini&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
el segon fa referència a CLI (executar PHP en mode línia de comandes, i també el farem servir més avall).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sudo joe /etc/php5/apache2/php.ini&lt;br /&gt;
$ sudo joe /etc/php5/cli/php.ini&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
i afegim la línia&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
include_path = &amp;quot;.://var/www/ZendGdata-1.11.11/library&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Reiniciem l'Apache&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sudo /etc/init.d/apache2 restart&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
i ara ja desapareix el warning i ens redirigim a Google Accounts per donar permís d'accés. Un cop donat permís, l'aplicatiu PHP ens deixa navegar pels nostres documents.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El fitxer Docs.php també el podem accedir per línia de comandes. com&lt;br /&gt;
veiem en el codi:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
function displayHelp($executable)&lt;br /&gt;
{&lt;br /&gt;
   echo &amp;quot;Usage: php {$executable} &amp;lt;action&amp;gt; [&amp;lt;username&amp;gt;] [&amp;lt;password&amp;gt;] &amp;quot; .&lt;br /&gt;
       &amp;quot;[&amp;lt;arg1&amp;gt; &amp;lt;arg2&amp;gt; ...]\n\n&amp;quot;;&lt;br /&gt;
   echo &amp;quot;Possible action values include:\n&amp;quot; .&lt;br /&gt;
       &amp;quot;retrieveAllDocuments\n&amp;quot; .&lt;br /&gt;
       &amp;quot;retrieveWPDocs\n&amp;quot; .&lt;br /&gt;
       &amp;quot;retrieveSpreadsheets\n&amp;quot; .&lt;br /&gt;
       &amp;quot;fullTextSearch\n&amp;quot; .&lt;br /&gt;
       &amp;quot;uploadDocument\n&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /var/www/ZendGdata-1.11.11/demos/Zend/Gdata&lt;br /&gt;
$ php Docs.php retrieveAllDocuments joanqc ****&lt;br /&gt;
prova 1a&lt;br /&gt;
primera_prova&lt;br /&gt;
MP_UF_Profes_2011_2012&lt;br /&gt;
Untitled document&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Per fer un upload d'un document&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ php Docs.php uploadDocument joanqc **** /home/joan/vocabulari_angles.txt&lt;br /&gt;
New Document Title: /home/joan/vocabulari_angles.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Més demos que hi ha a la carpeta ZendGdata-1.11.11/demos/Zend/Gdata:&lt;br /&gt;
*Photos.php -&amp;gt; accedim a la Photos API demo page (àlbums de Picassa)&lt;br /&gt;
*Calendar.php -&amp;gt; llista els calendaris que tens en el Google Calendar&lt;br /&gt;
&lt;br /&gt;
També tenim codi php relacionat amb Youtube&lt;br /&gt;
*http://localhost/ZendGdata-1.11.11/demos/Zend/Gdata/YouTubeVideoBrowser/&lt;br /&gt;
*http://localhost/ZendGdata-1.11.11/demos/Zend/Gdata/YouTubeVideoApp/ (si poses ''Videos from a specific user'' i poses com a usuari ''JoanilloMediaArt'' podràs veure els videos del professor).&lt;br /&gt;
*http://localhost/ZendGdata-1.11.11/demos/Zend/Gdata/BooksBrowser&lt;br /&gt;
&lt;br /&gt;
Recordem finalment de què va tot això. Es tracta d'integrar dins dels teus projectes i aplicacions PHP els serveis de Google, com per exemple Google Docs o Google Calendar. Si una empresa utilitza Google Docs o Google Apps de forma corportativa o generalitzada, li pot interessar aquesta integració en les aplicacions que desenvolupen en el departament de software.&lt;br /&gt;
&lt;br /&gt;
=Entrega=&lt;br /&gt;
Recorda la '''normativa''' per entregar les pràctiques al Moodle: [[ASIX-M09-IAW#Normativa_d.27entrega_de_les_pr.C3.A0ctiques_al_Moodle]].&lt;br /&gt;
&lt;br /&gt;
Per demostrar que has fet allò que es pretén i que has arribat allà on es pretén, n'hi haurà prou en fer unes captures de pantalla. Recorda d'escriure en el fitxer LLEEIX-ME els dubtes, problemes, èxits i fracassos que t'has trobat.&lt;br /&gt;
&lt;br /&gt;
'''opcional''': Spreadsheet Google API&lt;br /&gt;
&lt;br /&gt;
{{Autor}}, febrer 2019&lt;br /&gt;
[[Categoria: Institut Jaume Balmes]]&lt;br /&gt;
[[Categoria: ASIX-M09-IAW]]&lt;/div&gt;</summary>
		<author><name>Joan</name></author>
		
	</entry>
</feed>