2015-06-10 37 views
5

Quindi sto seguendo this e sto cercando di eseguire il suo primo esempio di php. Viene visualizzato il seguente errore:Zend Gdata - mancante HeaderValue.php

PHP Warning: require_once(Zend/Http/Header/HeaderValue.php): failed to open stream: No such file or directory in /opt2/sites/gdataApi/ZendGdata-1.12.13/library/Zend/Http/Client.php on line 45

Ho controllato e il file non è effettivamente lì. Così l'ho aggiunto dal download minimale 1.12. Quindi dice che Zend/Xml/Security.php non esiste quindi lo aggiungo.

Ora sto ottenendo il seguente errore:

PHP Notice: Undefined offset: 1 in /opt2/sites/gdataApi/ZendGdata-1.12.13/library/Zend/Gdata/ClientLogin.php on line 150 
PHP Stack trace: 
PHP 1. {main}() /opt2/sites/gdataApi/test.php:0 
PHP 2. Google_Spreadsheet->__construct() /opt2/sites/gdataApi/test.php:11 
PHP 3. Google_Spreadsheet->login()/opt2/sites/gdataApi/Google_Spreadsheet.php:40 
PHP 4. Zend_Gdata_ClientLogin::getHttpClient() /opt2/sites/gdataApi/Google_Spreadsheet.php:223 
PHP Notice: Undefined variable: php_errormsg in /opt2/sites/gdataApi/ZendGdata-1.12.13/library/Zend/Gdata/App.php on line 834 
PHP Stack trace: 
PHP 1. {main}() /opt2/sites/gdataApi/test.php:0 
PHP 2. Google_Spreadsheet->addRow() /opt2/sites/gdataApi/test.php:24 
PHP 3. Google_Spreadsheet->getSpreadsheetId() /opt2/sites/gdataApi/Google_Spreadsheet.php:62 
PHP 4. Zend_Gdata_Spreadsheets->getSpreadsheetFeed() /opt2/sites/gdataApi/Google_Spreadsheet.php:252 
PHP 5. Zend_Gdata->getFeed() /opt2/sites/gdataApi/ZendGdata-1.12.13/library/Zend/Gdata/Spreadsheets.php:150 
PHP 6. Zend_Gdata_App->getFeed() /opt2/sites/gdataApi/ZendGdata-1.12.13/library/Zend/Gdata.php:162 
PHP 7. Zend_Gdata_App->importUrl() /opt2/sites/gdataApi/ZendGdata-1.12.13/library/Zend/Gdata/App.php:213 
PHP 8. Zend_Gdata_App::importString() /opt2/sites/gdataApi/ZendGdata-1.12.13/library/Zend/Gdata/App.php:792 
PHP Fatal error: Uncaught exception 'Zend_Gdata_App_Exception' with message 'DOMDocument cannot parse XML: ' in /opt2/sites/gdataApi/ZendGdata-1.12.13/library/Zend/Gdata/App.php:833 
Stack trace: 
#0 /opt2/sites/gdataApi/ZendGdata-1.12.13/library/Zend/Gdata/App.php(792): Zend_Gdata_App::importString('', 'Zend_Gdata_Spre...', NULL, NULL) 
#1 /opt2/sites/gdataApi/ZendGdata-1.12.13/library/Zend/Gdata/App.php(213): Zend_Gdata_App->importUrl('https://spreads...', 'Zend_Gdata_Spre...', NULL) 
#2 /opt2/sites/gdataApi/ZendGdata-1.12.13/library/Zend/Gdata.php(162): Zend_Gdata_App->getFeed('https://spreads...', 'Zend_Gdata_Spre...') 
#3 /opt2/sites/gdataApi/ZendGdata-1.12.13/library/Zend/Gdata/Spreadsheets.php(150): Zend_Gdata->getFeed('https://spreads...', 'Zend_Gdata_Spre...') 
#4 /opt2/sites/gdataApi/Google_Spreadsheet.php(252): Zend_Gdata_Spreadsheets->getSpreadsheetFeed() 
#5 /opt2/sites/gdataApi/Google_Spreadsheet.php(62): Google_Spreadsheet->getSpreadsheetId('test spreadshee...') 
#6 /opt2/sites/gdataApi/test.php(24): Google_Spreadsheet in /opt2/sites/gdataApi/ZendGdata-1.12.13/library/Zend/Gdata/App.php on line 833 

Ho un foglio di calcolo di Google che vorrei aggiornare programatically utilizzando PHP. Puoi dirmi cosa sta andando storto con questo script? Sembra che questo sia un vecchio articolo. Ci sono più articoli recenti che mi mancano?

+0

L'aggiunta di 'ini_set ('track_errors', 1);' all'inizio dello script può fornire maggiori dettagli all'eccezione e indicare perché DOMDocument non riesce a analizzare i dati. Puoi provare ad aggiungerlo al tuo esempio e vedere se l'eccezione contiene più informazioni e postback? – drew010

+0

In realtà ho deciso di non perseguirlo poiché sembra che google api ora abbia bisogno di login oauth 2 e questa classe non lo supporta. –

+0

Mi piacerebbe vedere una risposta con un'alternativa –

risposta

3

Scarica la versione minima di Zend framework. Quindi estrarre l'archivio e copiare la directory /library/Zend/Http/Header nella directory /Zend/Http/ del tuo GData.