2

アップロードされたファイルを引数として Python スクリプトに渡そうとしています。

フォーム.php

<html>
<body>
<form method="post" enctype="multipart/form-data" action = "formdata.php">

<label for="file">Upload File:</label>
<input type="file" name="file" id="file" />
<label for="user_email">Email:</label>
<input type="text" name="user_email" id="user_email" />
<input type="submit" id="submit" value="Submit" />

</form>
</body>
</html>

フォームデータ.php

<?php
$email = $_POST['user_email'];
$uploaded_file = //don't know what to do here

$output = shell_exec("/usr/bin/python /var/www/Create.py $uploaded_file $email);
echo "<pre>$output</pre>";
?>

Create.py

  #    def moveMetadataFile():
  #      import shutil
  #      shutil.copyfile('/var/www/**uploaded_file**', '/var/www/temp/**uploaded_file**')
  # some more code
  upload = sys.argv[1]
  email = sys.argv[2]

これは正常に機能し、ユーザーから電子メールとすべてを取得し、ファイル名を自分で指定するとコードが機能しますが、ユーザーがアップロードしたファイルを python スクリプトで使用する必要があります。そして、どこから始めればよいかまったくわかりませんか?コメントアウトされた部分を無視してこれに答える方が簡単であれば、それもうまくいきます。

4

1 に答える 1

2

次を使用してファイル名を取得できます

$uploaded_file = $_FILES['file']['tmp_name'];

のPHPドキュメントからtmp_name

アップロードされたファイルがサーバーに保存されたファイルの一時ファイル名。

PHPのドキュメントを参照してください| 詳細については、 POSTメソッドをアップロードしてください。Pythonスクリプトを呼び出す前に、他のフィールドのいくつかを使用して、エラーが発生していないことを確認することもできます。

それは役に立ちますか?

于 2013-01-23T20:49:11.480 に答える