0

ユーザーがサーバーにファイルをアップロードするアプリを作成しています。インターネットから php スクリプトを見つけましたが、スクリプトにデータのアップロード先をどのように指示すればよいかわかりません。これはばかげた質問かもしれませんが、私は PHP プログラマーではありません。Javaコードでこのphpスクリプトを使用しています。

これがスクリプトです。

<?php
  $filename="abc.xyz";
  $fileData=file_get_contents('php://input');
  echo("Done uploading");
?>

よろしく

4

3 に答える 3

1

$_FILESこれはファイルをアップロードするひどい方法です。フォームとスーパーグローバルを使用する方がはるかに優れています。

W3Schools PHP ファイル アップロード チュートリアルをご覧ください。全部読んでください。さらに読むには、ファイルのアップロードに関するPHP マニュアルページを参照してください。

file入力タイプは、HTML フォームでアップロード ボックスを作成します。

<form action="upload_file.php" method="post"
enctype="multipart/form-data">
    <label for="file">Filename:</label>
    <input type="file" name="file" id="file"><br>
    <input type="submit" name="submit" value="Submit">
</form>

ファイルが期待どおりのものであることをエラーチェックして検証した後 (非常に重要: ユーザーがサーバーに何かをアップロードできるようにすることは、セキュリティ上の大きなリスクになります)、アップロードされたファイルを PHP のサーバー上の最終的な宛先に移動できます。

move_uploaded_file($_FILES["file"]["tmp_name"], "upload/abc.xyz");
于 2013-07-24T15:52:29.033 に答える
0

ファイル名は、実際にはファイル パスと新しいファイルの名前です。そこにパスを設定すると、書き込み権限のあるファイルが作成されます。

サーバーに相対パスではなくフルパスを指定し、そこにファイルを作成するために必要な権限があることを確認してください。

于 2013-07-24T15:52:33.577 に答える
0

常にPHP マニュアルを参照してください。

開始するための基本的な例を次に示します。

HTML:

<html> 
<body>
  <form enctype="multipart/form-data" action="upload.php" method="post">
    <input type="hidden" name="MAX_FILE_SIZE" value="1000000" />
    Choose a file to upload: <input name="uploaded_file" type="file" />
    <input type="submit" value="Upload" />
  </form> 
</body> 
</html>

PHP:

<?php
//Сheck that we have a file
if((!empty($_FILES["uploaded_file"])) && ($_FILES['uploaded_file']['error'] == 0)) {
  //Check if the file is JPEG image and it's size is less than 350Kb
  $filename = basename($_FILES['uploaded_file']['name']);
  $ext = substr($filename, strrpos($filename, '.') + 1);
  if (($ext == "jpg") && ($_FILES["uploaded_file"]["type"] == "image/jpeg") && 
    ($_FILES["uploaded_file"]["size"] < 350000)) {
    //Determine the path to which we want to save this file
      $newname = dirname(__FILE__).'/upload/'.$filename;
      //Check if the file with the same name is already exists on the server
      if (!file_exists($newname)) {
        //Attempt to move the uploaded file to it's new place
        if ((move_uploaded_file($_FILES['uploaded_file']['tmp_name'],$newname))) {
           echo "It's done! The file has been saved as: ".$newname;
        } else {
           echo "Error: A problem occurred during file upload!";
        }
      } else {
         echo "Error: File ".$_FILES["uploaded_file"]["name"]." already exists";
      }
  } else {
     echo "Error: Only .jpg images under 350Kb are accepted for upload";
  }
} else {
 echo "Error: No file uploaded";
}
?>

詳細については、ドキュメントを参照してください。

お役に立てれば!

于 2013-07-24T15:52:52.780 に答える