php - Zend_GData 电子表格 - grid-id 的无效查询参数值

标签 php zend-framework google-sheets zend-gdata

我正在尝试通过 Zend_GData 库更新 google 电子表格。我确信用户 ID 和密码是正确的。我认为问题出在电子表格键或工作表 ID 上。甚至我也不知道如何得到这个worksheetID。请帮我解决这个问题。这是 m 工作表的确切 URL。

https://docs.google.com/spreadsheet/ccc?key=0AmW1-CVeX7oOdGRkYURWNXVMRi1DTW9NTGNhZ09OTGc&hl=en_US#gid=0

这是我的代码。

$user = 'xxxxxxxxxxxxxxxxxxxxxx';
$pass = 'xxxxxxxxxxxxxxxxxx';
$service = Zend_Gdata_Spreadsheets::AUTH_SERVICE_NAME;
$client = Zend_Gdata_ClientLogin::getHttpClient($user, $pass, $service);
$spreadsheetService = new Zend_Gdata_Spreadsheets($client);
$spreadsheetKey = "0AmW1-CVeX7oOdGRkYURWNXVMRi1DTW9NTGNhZ09OTGc";
$worksheetId = "Sheet1";
try
{           
    $spreadsheetService->insertRow(array('Prasad','10000'),$spreadsheetKey,$worksheetId);

}
catch(Exception $error)
{

    echo $error->getMessage() ;

}

这是我在浏览器屏幕上看到的错误消息。

预期响应代码 200,得到 400 Invalid query parameter value for grid-id。

最佳答案

我解决了这个问题。我可以使用下面的代码找到 SpreadsheetKey 和 WorkSheetID。

$user = 'xxxxxxxxxxxxxxx';
$pass = 'xxxxxxxxxxxxx';
$service            = Zend_Gdata_Spreadsheets::AUTH_SERVICE_NAME;
$client             = Zend_Gdata_ClientLogin::getHttpClient($user, $pass, $service);
$spreadsheetService = new Zend_Gdata_Spreadsheets($client);
$feed               = $spreadsheetService->getSpreadsheetFeed();
$sheetName = "Test1";
foreach($feed->entries as $entry)
{               
    if($entry->title->text == $sheetName)
    {
        $spreadsheetURL = $entry->id;
        break;
    }
}

$spreadsheetKey = basename($spreadsheetURL);

$query = new Zend_Gdata_Spreadsheets_DocumentQuery();
$query->setSpreadsheetKey($spreadsheetKey);
$feed = $spreadsheetService->getWorksheetFeed($query); 

echo "Spreadskeet Key : $spreadsheetKey <br/>";

foreach($feed->entries as $entry)
{
    echo "ID of sheet {$entry->title->text} is " . basename($entry->id) . " <br/>";
}

获得这些值后,我的脚本也无法正常工作。然后我发现当我们定义数组时,'Key' 应该以小写形式提及并且没有空格。

$spreadsheetService->insertRow(array('name'=>'Prasad','value'=>'10000'),$spreadsheetKey,$worksheetId);

关于php - Zend_GData 电子表格 - grid-id 的无效查询参数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9157845/

相关文章:

php - 这个查询被过度转义了!需要一个简单的想法

php - 具有复合主键的表的 Magento 资源模型

google-apps-script - 使用谷歌应用程序脚本保护范围

php - 对话 mysql Laravel Eloquent 中的最后一条消息

php - [Symfony2]Catchable Fatal Error : Object of class [. ..] 无法转换为字符串

php - 如何在 PHP 中将日期时间转换为字符串?

mysql - SQLSTATE[HY000] : General error: 1366 Incorrect integer value:

php - Zend/PHP : Problem uploading/downloading file to/from MySQL's BLOB field

excel - 如何从 Excel 工作表中更新 Google Doc 电子表格 'real time'(持续)

javascript - Google Apps 脚本 - UiApp ServerHandler 回调函数 - 值未定义