1

ローカル パスをパラメーターとして送信するサーバーで PHP ページを開くクライアント側スクリプトからファイルを自動的にアップロードしようとしていますGET。これは単純な python スクリプトです。私の問題は、セキュリティ上の理由からこれが機能しないため、入力タイプファイルの値を入力してフォームを自動投稿できないことです。

それで、Curl を使用することを考えましたが、気付きました...$_FILES['myfile']['tmp_name']これは でしか投稿されていないため、サーバーにアクセスする方法がありませんmultipart/form-data formよね?

これを回避する方法はありますか?ブラウザからファイルをアップロードする他の方法はありますか? openID 認証を使用してアップローダーのメールを MySQL データベースに保存したいので、PHP でそれを実行できることが理想的です。よろしくお願いします。

4

1 に答える 1

0

curl が実行可能なソリューションではない理由を本当に理解していないと思います。パソコンのファイルは、デフォルトでは外部に公開されません。それどころか、ハードディスクを共有したい場合は、多くのものをインストールして設定する必要があります:

  1. 着信接続が PC にリダイレクトされるようにルーターを構成する必要があります。
  2. 着信接続が通過できるようにファイアウォールを構成する必要があります
  3. ファイル要求を受け入れて処理できるソフトウェアをインストールする必要があります (Web サーバー、FTP サーバー、NFS サーバーなど)。
  4. そのようなソフトウェアに、共有したい正確なファイルを指示する必要があります (完全なハード ディスク ドライブを世界中に公開したくありません)。
  5. おそらく、ファイルにアクセスできるユーザーを制限したいでしょう: ユーザー名 + パスワード、証明書、IP アドレスフィルター...

ユーザーの介入なしにファイルをアップロードしたい場合、ユーザーはその機能を提供するプログラムをコンピューターにインストールする必要があります。ベアボーン標準の Web ブラウザーでは実行できません。

クライアント側のPython スクリプトについて何か言いました。Python コンテキストでのクライアント側の意味についてはわかりませんが、Python は確実に HTTP 接続を開いてファイルを送信できます。そのトラックに従ってください。

于 2012-12-13T11:33:19.910 に答える