phpを使った画像のアップロード

2019年10月1日 CEO 0 Comments

-まずは、 参考にさせていただいた書籍の紹介 –

よくわかるPHPの教科書 【PHP7対応版】
https://book.mynavi.jp/ec/products/detail/id=89743

では、

sendpic.php

<!DOCTYPE html>
<html lang=”ja”>
<head>
<meta charset=”UTF-8″>
</head>
<body>
<!–エンコード化–>
<form action=”sendpic_submit.php” method=”post” enctype=”multipart/form-data”>
<fieldset>
<div>picture:<input type=”file” name=”picture” /></div>
<div><input type=”submit” value=”submit” /></div>
</fieldset>
</form>
</body>
</html>

sendpic_submit.php

<?php
$file=$_FILES[“picture”];//input_typeのname名 連想配列として格納される
$ext=substr($file[“name”],-4);//拡張子の検査 後ろから4つ分
if($ext==”.git”||$ext==”.jpg”||$ext==”.png”||$ext==”.JPG”):
$filePath=”./img/” . $file[“name”];//保存したいフォルダの指定
$success=move_uploaded_file($file[“tmp_name”], $filePath);//一時フォルダから保存したいフォルダへ移動

if($success): ?>
upload success!
<img=src=”<?php print($filePath); ?>”>
<?php else: ?>
file upload failure!
<?php endif; ?>

<?php else: ?>
upload file is “gif” or “jpg” or “png” only!
<?php endif; ?>

無事に送ることができました!

もしもアップロードでエラーが発生した場合は、

error:<?php print ($file[“error”]); ?>

でエラーコードを調べて、

https://www.flatflag.nir87.com/move_uploaded_file-970#i-6

この辺が参考になります。

ちなみに私は最初、サイズが大きすぎてエラーになりました。。