은 미리보기 이미지를 생성하고 이미지 압축 및 이미지 업로드를 생성합니다..JPG와 .jpg의 차이점은 무엇입니까? 아래 코드
if (!empty($_FILES)) {
$tempFile = $_FILES['file']['tmp_name']; //3
define ("MAX_SIZE","400");
function getExtension($str) {
$i = strrpos($str,".");
if (!$i) { return ""; }
$l = strlen($str) - $i;
$ext = substr($str,$i+1,$l);
return $ext;
}
$errors=0;
if($_SERVER["REQUEST_METHOD"] == "POST") {
$image =$_FILES["file"]["name"];
$uploadedfile = $_FILES['file']['tmp_name'];
if ($image) {
$filename = stripslashes($_FILES['file']['name']);
$extension = getExtension($filename);
$extension = strtolower($extension);
if (($extension != "jpg") && ($extension != "jpeg") && ($extension != "png") && ($extension != "gif")) {
$change='<div class="msgdiv">Unknown Image extension </div> ';
$errors=1;
} else {
$size=filesize($_FILES['file']['tmp_name']);
if ($size > MAX_SIZE*1024) {
$change='<div class="msgdiv">You have exceeded the size limit!</div> ';
$errors=1;
}
if($extension=="jpg" || $extension=="jpeg") {
$uploadedfile = $_FILES['file']['tmp_name'];
$src = imagecreatefromjpeg($uploadedfile);
} else if($extension=="png") {
$uploadedfile = $_FILES['file']['tmp_name'];
$src = imagecreatefrompng($uploadedfile);
} else {
$src = imagecreatefromgif($uploadedfile);
}
echo $scr;
list($width,$height)=getimagesize($uploadedfile);
$newwidth=600;
$newheight=($height/$width)*$newwidth;
$tmp=imagecreatetruecolor($newwidth,$newheight);
$newwidth1=125;
$newheight1=($height/$width)*$newwidth1;
$tmp1=imagecreatetruecolor($newwidth1,$newheight1);
imagecopyresampled($tmp,$src,0,0,0,0,$newwidth,$newheight,$width,$height);
imagecopyresampled($tmp1,$src,0,0,0,0,$newwidth1,$newheight1,$width,$height);
$file_name = date('d') . date('M') . $_FILES['file']['name'];
$filename = "upload/gallery/". $file_name;
$filename1 = "upload/thumb/". $file_name;
imagejpeg($tmp,$filename,100);
imagejpeg($tmp1,$filename1,100);
imagedestroy($src);
imagedestroy($tmp);
imagedestroy($tmp1);
}
}
}
}
결과 큰 문제가 대문자로 확장 (특히 .JPG)가 파일이 개방되지 않습니다 또는 Windows Live에서 인정 받고 있다는 발생되는 일부 이미지 .JPG 확장자를 가진 상점 또는 .jpg로 저장의 일부 그러나,이다 사진 갤러리. .jpg 파일이 예상대로 작동합니다. 이 문제의 원인은 무엇입니까?
잘못 작성된 프로그램 중 일부는 JPG를 인식하지 않는다는 점을 제외하고는 전혀 차이가 없습니다. –
이름을 소문자로 바꾸면 서버가 리눅스에서 실행될 때 번거로운 일이 발생할 수도 있습니다. –
또한 파일 확장자 getter를'$ ext = pathinfo ($ filename, PATHINFO_EXTENSION);로 바꿀 수 있습니다. woopsy – RiggsFolly