画像関連

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

Sara

 
ここまでの記事はこちら

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

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

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

第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行目)

完成

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

ここまでのコード

Q
list.php
PHP・MySQL
カレンダー開発講座

カレンダーを開発しながら

  • MySQLにデータを保存・編集・削除・検索する方法
  • タブレット・スマートフォンに対応させる方法
  • Datetimepicker の使い方
  • CSV ファイルを使った祝日の表示

など幅広く学ぶことができる講座です。

何か開発してみたい方、より実用的なコードを学びたい方にオススメです。

guest
0 Comments
Inline Feedbacks
View all comments
ABOUT ME
Sara
Sara
運営者
書籍やオンライン講座でプログラミングを勉強してフリーランスのプログラマーになりました。
このサイトでは「わかりやすく・シンプル」をモットーに、プログラミングの基礎からアプリ開発まで紹介します。
独学でプログラミングを勉強をしている方、基礎は勉強したけれど次に何をすれば良いか分からない...という方のお役に立てるサイトを目指しています。
0
この記事にコメントするx
記事URLをコピーしました