PHPの教科書20 ファイルアップロード
ファイルをアップロードして、指定したフォルダに格納
http://felica.boy.jp/textbook/lecture1-4-1.php
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>よく分かるPHPの教科書</title> </head> <body> <!-- ファイル形式は必ずpostメソッドをつかう。getじゃ送信されない --> <!-- multipart/form-dataでエンコード化 --> <form action="lecture1-4-1.php" method="post" enctype="multipart/form-data"> <dl> <dt>写真</dt> <dd><input name="my_img" type="file" id="my_img" size="50"></dd> </dl> <input type="submit" value="送信する"> </form> </body> </html>
<?php $file = $_FILES['my_img']; print('ファイル名(name):' . $file['name'] . '<br>'); print('ファイルタイプ(type):' . $file['type'] . '<br>'); print('アップロードしたファイル(tmp_name):' . $file['tmp_name'] . '<br>'); print('エラー内容(error):' . $file['error'] . '<br>'); print('サイズ(size):' . $file['size'] . '<br>'); //substrで拡張子の判定 -4はファイル名の後ろから4つという意味 $ext = substr($file['name'], -4); // ||はまたは 拡張子種類判定 if ($ext == '.gif' || $ext == '.jpg' || $ext == '.png') { $filePath = './user_img/' . $file['name']; //tmp_nameは一時的にアップされたファイル名 move_uploaded_file($file['tmp_name'], $filePath); print('<img src="' . $filePath . '">'); } else { //エラー構文 print('※拡張子が.gif, .jpg, .pngのいずれかのファイルをアップロードしてください'); } ?>