画像関連

【PHP・MySQL】データベースに画像を保存・表示する方法 第7回「ファイルサイズのチェック」

 
ここまでの記事はこちら
 

サイズが大きすぎる画像を保存できてしまうと、サーバーに負担がかかってしまいます。

前回の形式チェックと同じように画像ファイルのサイズチェックも入れておきましょう。


 
 


 

ファイルのサイズチェックを入れる方法

第6回「形式チェック」が完了している状態から始めます。

今回は 1MB までのファイルでチェックを入れてみましょう。

前回形式チェックを入れた箇所にコードを追加します。(10~14行目)

 
 

10行目

$maxFileSize = 1048576;

$_FILES['image']['size']; で取得した画像サイズの単位は Byte(バイト)です。


 

1 MB = 1024 KB = 1048576 Byte

なので $maxFileSize = 1048576; としています。
 
 

12行目

if ($size > $maxFileSize || !in_array($type, $validFileTypes)) {

形式チェックと一緒にサイズの判定も入れています。

「画像サイズが $maxFileSize を超えている」または「形式が $validFileTypes に含まれていない」場合にエラーメッセージを表示します。
 
 
 

コードの修正

エラーメッセージを表示すると、左側に表示されるはずの登録済み画像が消えてしまいます。


 
 

登録済みの画像が常に表示されるようにコードを修正します。(1~13行目)

 
 
 

完成

以下のように動いていれば完成です。

 
 
 

ここまでのコード

list.php

 
 
 
 


 

ABOUT ME
Sara
「わかりやすく・シンプル」をモットーに、スマホアプリ・ウェブアプリの作り方を紹介します。 独学でプログラミングを勉強をしている方、基礎は勉強したけれど次に何をすれば良いか分からない...という方のお役に立てるサイトを目指しています🙂
guest

CAPTCHA


0 Comments
Inline Feedbacks
View all comments
0
この記事にコメントするx