このスクリプトを使用して 1 年間、自分の Web サイトに写真をアップロードしてきましたが、最終的に変更が必要であることに気付きました。私はインターネット全体を見てきましたが、まだ適切な解決策を見つけていないので、あなたに来ました。
- このスクリプトは現在、プロパティ 111x111 でサム イメージを作成し、フォルダ '/images' に移動しています。
元の画像もアップロードしたいのですが、どうすればいいですか?
if(isset($_POST['submit'])) { if (($_FILES["image"]["type"] == "image/jpeg" || $_FILES["image"]["type"] == "image/pjpeg" || $_FILES["image"]["type"] == "image/gif" || $_FILES["image"]["type"] == "image/x-png") && ($_FILES["image"]["size"] < 4000000)) $current_img=$_FILES['image']['name']; $extension = substr(strrchr($current_img, '.'), 1); date_default_timezone_set("Europe/Stockholm"); $time = date("fYhis"); $new_image = uniqid() . $time; $destination = "images/".$new_image . "-thumb" . "." . $extension; $action = move_uploaded_file($_FILES['image']['tmp_name'], $destination); $max_upload_width = 111; $max_upload_height = 111; if($_FILES["image"]["type"] == "image/jpeg" || $_FILES["image"]["type"] == "image/pjpeg"){ $image_source = imagecreatefromjpeg($destination) ; } if($_FILES["image"]["type"] == "image/gif"){ $image_source = imagecreatefromgif($_FILES["image"]["tmp_name"]); } if($_FILES["image"]["type"] == "image/bmp"){ $image_source = imagecreatefromwbmp($_FILES["image"]["tmp_name"]); } if($_FILES["image"]["type"] == "image/x-png"){ $image_source = imagecreatefrompng($_FILES["image"]["tmp_name"]); } imagejpeg($image_source,$destination,100); chmod($destination,0644); list($image_width, $image_height) = getimagesize($destination); if($image_width>$max_upload_width || $image_height >$max_upload_height){ $proportions = 1; if($image_width>$image_height){ $new_width = $max_upload_width; $new_height = round($max_upload_width/$proportions); } else{ $new_height = $max_upload_height; $new_width = round($max_upload_height*$proportions); } $new_image = imagecreatetruecolor($new_width , $new_height); $image_source = imagecreatefromjpeg($destination); imagecopyresampled($new_image, $image_source, 0, 0, 0, 0, $new_width, $new_height, $image_width, $image_height); imagejpeg($new_image, $destination, 100); // save imagedestroy($new_image); }