0

curl を使用して scribd.com にファイルをアップロードしたいのですが、

みんな助けてください、

私はこのコードを試しています:

<?php
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_VERBOSE, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible;)");
    curl_setopt($ch, CURLOPT_URL, _'http://www.scribd.com/upload/supload');
    curl_setopt($ch, CURLOPT_POST, true);
    // same as <input type="file" name="file_box">
    $post = array(
    $path=getcwd(); //absolute path
    $post = array(
        "file"=>"@".$path."/test.txt",
    );
    curl_setopt($ch, CURLOPT_POSTFIELDS, $post); 
    $response = curl_exec($ch);
?>
4

1 に答える 1

0

_( curlopt_url行に)少なくとも1つの構文エラーがあります。exec()呼び出し後にcurlエラーをチェックしましたか?

$response = curl_exec($ch);
if ($response === false) {
   die(curl_error($ch));
}

同様に、コメントはファイルフィールドの名前が「file_box」であることを示していますが、アップロードフィールドとして「file」のみを使用しています。scribdが期待しているものと一致する必要があります。途中でファイルを投げて、それが機能することを期待することはできません。curlを使用してブラウザの動作を再現しています。つまり、通常のブラウザベースのアップロードが実行されたときに送信されるすべてのフィールド/データを複製する必要があります。

于 2012-01-17T00:24:53.980 に答える