いろいろ調べましたが、一日も悩みました。
やりたいことはエラーごとにクエリを作り、urlにつけたクエリを見て、
up.phpページで、該当するエラー文を表示することです。ですが素人の自分はそれらをどう実行すればいいかをまったくわからない状態です。答えがほしい訳ではありませんが、アドバイスやヒント、もしくは方向性または参考ページを頂けたら幸いです。
よろしくお願いいたします。
up.php
php
1<!DOCTYPE html> 2<html> 3<head> 4 5 <meta charset="utf-8"> 6 <title>php</title> 7</head> 8<body> 9<form action="resize.php" method="get" name="form" enctype="multipart/form-data"> 10 11 12<input type="hidden" name="MAX_FILE_SIZE" value="20971520"> 13<p> 14<input type="file" name="upfile" size="30" id="upload"> 15</p> 16 17<p> 18<input type="submit" value="送信する"> 19</p> 20</form> 21</body> 22 23 </html>
resize.php
php
1<?php 2ini_set('display_errors', '1'); 3error_reporting(E_ALL); 4 5if (!isset($_FILES['upfile'])) { 6 echo '<FONT COLOR="RED">恐らくアップロードページのHTMLに記述ミス有り!</FONT>'; 7 return; 8} 9echo $_GET['upfile']; 10$file = $_FILES['upfile']; 11$tmp_name = $file['tmp_name']; // 一時ファイルのパス 12$filesize = $_FILES['upfile']['size']; 13 14 15if ($filesize > 5242880) { 16 echo '<FONT COLOR="RED">5M以下のファイルを選択して下さい!</FONT>'; 17} 18 19 20 21 22$finfo = new finfo(FILEINFO_MIME_TYPE); 23if (!preg_match('/\.jpg$|\.jpeg$/i', $file['name']) 24 || $finfo->file($tmp_name) !== 'image/jpeg') { 25 echo '<FONT COLOR="RED">JPEGファイルを選択してください!</FONT>'; 26 27} 28 29$result = true; 30$get = getimagesize($tmp_name); 31 32if ($get["0"]>1000) { 33 $result = false; 34 echo '<FONT COLOR="RED">横幅を小さくしてください!</FONT>'; 35} 36if ($get["1"]>1000) { 37 $result = false; 38 echo '<FONT COLOR="RED">縦幅を小さくしてください!</FONT>'; 39} 40 41if ($result) { 42 echo '送信完了'; 43 44} 45header('location:http://localhost/up/php'); 46exit; 47 48?> 49
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。