0

こんにちは皆さん、Google ドキュメント アカウントにドキュメントをアップロードするフォームを作成していますが、うまくいきません。エラーが発生し続けます。以下が私のコードです。

$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' とメッセージ 'Expected response code 200, got 400 Inconsistent Repeating query parameter' in C:...\Zend\Gdata\App.php:700

私はphpとZend gdataコードを使用しています。

4

1 に答える 1

0

Zend_Gdata_Docs には mimetype に関する「バグ」があります。一時ファイルとファイル名をタイトルとして使用している場合、自動的に MIME タイプを取得することはありません。一時ファイルに存在しない fileLocation 拡張子に基づいて MIME タイプを取得しようとします。

Zend クラスを更新するのではなく、自分に合ったクラスを作成しました。ConvertDocと呼ばれるのは、スプレッドシートをアップロードして csv としてダウンロードできるようにしたかったからです。

本当に必要なのはこれ...

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

null の代わりに $mimetype を渡します。

于 2011-02-09T18:37:23.790 に答える