0
업로드 된 이미지를 절반으로 변환하여 서버 공간을 절약 할 수 있도록 PHP 스크립트가 있습니다. 작동하지 않습니다. PHP에 익숙하지 않으므로 다른 사람이 할 수 있습니다. 내가 잘못 가고있는 곳에서 도와주세요.php png 이미지 품질 50 %
if(isset($_FILES['t1']['name'])){
$file = rand(0, 10000000).$_FILES['t1']['name'];
if (move_uploaded_file($_FILES['t1']['tmp_name'], $file)) {
if($fp = fopen($file,"rb", 0))
{
$picture = fread($fp,filesize($file));
fclose($fp);
$img = imagecreatefrompng($file);
imagepng($img, $file, 6); //6 quality setting
imagedestroy($img);
$tag1 = '<img src="'.$file.'" alt="" class="default" />';
//unlink($file);
echo "<script>$(document).ready(function() {var write = $('.item:nth-child(1)').html();localStorage.item1Pantry = write;});</script>";
}
}
}
+1 보안 경고! –
사용자가 PNG 파일을 업로드하도록 강제 할 수있는 방법이 있습니까? – Blynn
@ Blynn, 아니요. 나중에 파일 형식을 서버 측에서 감지 할 수 있습니다 (확장명 만 보는 것이 아니라 파일 데이터를 실제로 검사하여 수행 할 수 있습니다). 그때도 과거에는 이미지 라이브러리에 알려진 취약점이있었습니다. 웹 문서 루트 외부에 파일 이름 확장자없이 일련 번호 또는 파일 이름을 지정합니다. 데이터베이스에서 파일 데이터를 가져 오는 PHP 스크립트로 서비스하십시오. 그런 다음 서버 측 실행을 방지하면서 원할 경우 사용자가 원래 가진 것과 함께 제안 된 파일 이름으로 파일을 반환 할 수도 있습니다. – Brad