2017-01-07 10 views
-1

を働いていない私は、私は以下のように入力を入力したフォームがあります。その後PHPのmove_uploaded_file機能が正しく

topic image: <input type="file" name="pic" accept="image/*"> 
<input type="submit" name="submit" value="submit"> 

を、私は変数に得たもの保存:次に

$image=$_POST['pic']; 

、それが機能していない私はmove_uploaded_file関数を使用しますが、ここではコードです:

if(isset($_POST['submit'])) 
{ 
    move_uploaded_file($image,'images/'.$image); 
} 

だから、私は、ファイルをフォルダに保存することにしたい私「画像」と呼ばれたいが、機能しません。誰かが私を助けて、なぜ私に説明できますか?

+1

。下記のファイルを参照してください:http://php.net/manual/en/features.file-upload.post-method.php –

+1

1. '$ _POST'はファイルデータにアクセス/操作するための正しいグローバルではありません。' $ _FILES'を使用してください。 。 2.フォームに 'enctype = multipart/form-data'があることを確認します。 3. 'move_uploaded_file()'関数呼び出しが間違っています。 RTM、[http://php.net/manual/en/function.move-uploaded-file.php](http://php.net/manual/en/function.move-uploaded-file.php) –

答えて

1

コードbasicsを学ぶ必要があります。 サーバーにファイルをアップロードするには、$_FILESスーパーグローバルを使用する必要があります。これは、アップロードされたファイルアイテムとそれらのプロパティのいくつかの連想配列です。

また、enctype="multipart/form-data"をHTMLフォームに追加する必要があります。

例:ファイルアップロードで作業するときは、 `$ _FILES`を使用する必要が

<form action="" method="post" enctype="multipart/form-data"> 
topic image: <input type="file" name="pic" accept="image/*"> 
<input type="submit" name="submit" value="submit"> 
</form> 
<?php 

if(isset($_POST['submit'])) 
{ 
    //This is not a good file upload code sample. You have to improve it. 
    $image=$_FILES["pic"]["tmp_name"]; 
    $imageName = $_FILES["pic"]["name"] 
    move_uploaded_file($image,'images/'.$imageName); 
} 
?> 
関連する問題