フォームでファイルをアップロード

フォームでファイルをアップロード

文字情報をフォーム送信するのなら$_POST['name']でOKだが
ファイルをアップロードするにはformでenctype="multipart/form-data"を記述しないと
そもそも送信できない。
そのほかにinput要素にもtype="file"とつけておく。

<form action="check.php" method="post" enctype="multipart/form-data">
   <input type="file" name="upload_file" />
   <input type="submit" value="送信" />
</form>

アップロードされたファイルの中身をprint_r関数で出力すると
ファイル名が出力される。

$upload_file = $_FILES["upload_file"];
print_r($upload);

出力結果
Array (
 [name] => filename.jpg          //ファイルネーム
 [type] => image/png          //MIMEタイプ
 [tmp_name] => tmp/php/phpEAV2P2  //アップされたファイルがサーバ上で一時保存されたテンポラリファイルの名前。 
 [error] => 0                     //エラーコード正常にアップロードされた場合、0
 [size] => 474056         //ファイル容量
) 

アップロードされたファイルの保存方法

move_uploaded_file(string $filename , string $destination )
$filename =アップロードしたファイルのファイル名。
$destination =ファイルの移動先。

move_uploaded_file( $upload_file["tmp_name"], ‘/img/upload/');