0

curl を使用してアップロードを受け入れるサーバーにファイルをリモートアップロードしたいのですが、毎回「@」記号を使用して完全なファイルパスを入力せずに、参照ボタンを作成してファイルを選択し、curl アップロードに進むことはできますか?

これは私のコードです::

$post = array("file_box"=>"@/path/to/myfile.jpg");

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://remote-site");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post); 
$output = curl_exec($ch);
curl_close($ch);

return $output;

値をphp変数に渡す参照ボタンで「@/path/to/myfile.jpg」を変更したいだけです

これを変更したい [[ $post = array("file_box"=>"@/path/to/myfile.jpg"); ]]

そのようなものに

[[ $post = array("file_box"=>"@".$variable_contains_file_path_from_browse_button); ]]

クライアントからリモートサーバーへの一時パスで中間サーバー(このスクリプトをホスト)にファイルをアップロードしないようにします

これに関する解決策はありますか

助けてくれてありがとう。

4

1 に答える 1

0

これを扱うSOにはいくつかの質問があります

ここにいくつかのリンクがあります

curl を使用してファイルをアップロードする

Curl php ファイルのアップロード

また、Google検索戦略はhttp://bit.ly/PMUf2bです

それでも、フロント エンドからの参照ボタンのアップロードを求めているので、チューター リンクと一緒に完全なセットをここに示します。

フロントエンドとphpコードの両方を備えたこちらのチューターに従うことができます

curl を使用してアップロードする PHP コードは次のとおりです。

    $request_url = ‘http://www.example.com/test.php’;
    $post_params['name'] = urlencode(’Test User’);
    $post_params['file'] = ‘@’.'demo/testfile.txt’;
    $post_params['submit'] = urlencode(’submit’);

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $request_url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $post_params);
    $result = curl_exec($ch);
    curl_close($ch);

ここにhtmlコードがあります

<form method=”post” action=”test.php” enctype=”multipart/form-data”&gt;
    <input type=”text” name=”name” value=”Test User” />
    <input type=”file” name=”file” />
    <input type=”submit” name=”submit” value=”submit” />
</form>
于 2012-10-03T01:01:32.243 に答える