无法从我的PHP表单上传到谷歌文档 - 收到错误

时间:2010-03-17 10:06:17

标签: php zend-framework google-docs zend-gdata

大家好我正在构建一个表单,将文档上传到我的谷歌文档帐户但不起作用我不断收到错误 - 以下是我的代码;

$service = Zend_Gdata_Docs::AUTH_SERVICE_NAME;
$client = Zend_Gdata_ClientLogin::getHttpClient($username, $pww, $service);
$docs = new Zend_Gdata_Docs($client);

$newDocumentEntry = $docs->uploadFile($_FILES['file']['tmp_name'], $_FILES['file']['name'], null, Zend_Gdata_Docs::DOCUMENTS_LIST_FEED_URI);

我收到以下错误:

  

PHP致命错误:未捕获的异常'Zend_Gdata_App_HttpException'   消息'预期响应代码200,得到400不一致   在C中重复查询参数:... \ Zend \ Gdata \ App.php:700

我正在使用php和Zend gdata代码。

1 个答案:

答案 0 :(得分:0)

Zend_Gdata_Docs中有一个带有mimetype的“bug”。 如果您使用临时文件并且文件名为标题,则不会自动为您拉出mimetype。它尝试根据临时文件中不存在的fileLocation扩展名来拉取mimetype。

我创建了一个适合我的课程,而不是更新Zend课程。 它被称为ConvertDoc,因为我希望能够upload a spreadsheet and download as csv.

你真正需要的是......

    // get mimetype from original file name
    $filenameParts = explode('.', $originalFileName);
    $fileExtension = end($filenameParts);
    $mimeType = Zend_Gdata_Docs::lookupMimeType($fileExtension);

传递$ mimetype而不是null。