題名が少しわかりにくいかもしれませんので、こちらで改めて説明させていただきます。
画像のアップロードページを作りましが。
up.phpとresize.php 2ページあります。
resizeページでアップされた画像データを条件でエラーチェックをし、そのエラー文をup.phpで表示できるようしています。
しかし、今はup.php側でエラー文の条件判別ができない状態です。
やりたいことは、resizeでエラーが発生した時にクエリが作成され、up.phpでその作成されたクエリに対して、条件に合ったエラー文を出したいです。
ちなみに今はup.phpで四つのエラーが全部出てる状態です。
説明が下手で申し訳ありませんが、よろしくお願いいたします。
php
1if (isset($_GET['error'])&&(isset($_GET['filesize'])>5242880)) { 2 echo '<span style="color: #ee0000">5M以下のファイルを選択して下さい!</span>'; 3 4}else{ 5 echo "";
このような方法でやって見たですが、エラーは確かに一つ減りました。
しかしこのエラー文は減らしたというより、もう出てこないみたいです。
しかしエラーもなかったので、ただ消えただけです。
ここの部分のみ試したです。
↓↓に全部のコードを貼ります。
up.php
php
1<?php 2 3 4if (isset($_GET['error'])&&(isset($_GET['filesize'])>5242880)) { 5 echo '<span style="color: #ee0000">5M以下のファイルを選択して下さい!</span>'; 6 7}else{ 8 echo ""; 9} 10 11if(isset($_GET['error_2'])){ 12 echo '<span style="color: #ee0000">JPEGファイルを選択してください!</span>'; 13}else{ 14 echo ""; 15} 16if (isset($_GET['error_3'])) { 17 echo '<span style="color: #ee0000">横幅を小さくしてください!</span>'; 18}else{ 19 echo ""; 20} 21if (isset($_GET['error_4'])) { 22 echo '<span style="color: #ee0000">縦幅を小さくしてください!</span>'; 23}else{ 24 echo ""; 25} 26 27?> 28<!DOCTYPE html> 29<html> 30<head> 31 32 <meta charset="utf-8"> 33 <title>php</title> 34</head> 35<body> 36<form action="resize.php" method="get" name="form" "> 37 38 39<input type="hidden" name="MAX_FILE_SIZE" value="20971520"> 40<p> 41<input type="file" name="upfile" size="30" id="upload"> 42</p> 43 44<p> 45<input type="submit" value="送信する"> 46</p> 47</form> 48</body> 49 50 </html> 51 52
resize.php
php
1<?php 2ini_set('display_errors', '1'); 3error_reporting(E_ALL); 4 5if (!isset($_FILES['upfile'])) { 6 echo '<span style="color: #ee0000">恐らくアップロードページのHTMLに記述ミス有り!</span>'; 7 8} 9 10$file = $_FILES['upfile']; 11$tmp_name = $file['tmp_name']; // 一時ファイルのパス 12$filesize = $_FILES['upfile']['size']; 13 14 15if ($filesize > 5242880) { 16 echo '<span style="color: #ee0000">5M以下のファイルを選択して下さい!</span>'; 17 $error="1"; 18} 19 20 21$error = "1"; 22$error_2 = "2"; 23$error_3 = "3"; 24$error_4 = "4"; 25header('location:http://localhost/up/up.php?error='.$error."&error_2=".$error_2."&error_3=".$error_3."&error_4=".$error_4); 26 27 28$finfo = new finfo(FILEINFO_MIME_TYPE); 29if (!preg_match('/\.jpg$|\.jpeg$/i', $file['name']) 30 || $finfo->file($tmp_name) !== 'image/jpeg') { 31 echo '<span style="color: #ee0000">JPEGファイルを選択してください!</span>'; 32 $error="2"; 33} 34 35$result = true; 36$get = getimagesize($tmp_name); 37 38if ($get["0"]>1000) { 39 $result = false; 40 echo '<span style="color: #ee0000">横幅を小さくしてください!</span>'; 41 $error="3"; 42} 43if ($get["1"]>1000) { 44 $result = false; 45 echo '<span style="color: #ee0000">縦幅を小さくしてください!</span>'; 46 $error="4"; 47} 48 49if ($result) { 50 echo '送信完了'; 51 52} 53 54?> 55
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/01/23 08:03 編集
2017/01/23 08:05