Редактировать и обрезать загруженное изображение

Можете ли вы мне помочь отредактировать этот код?

function insert_lenses(){ // to get userid $reg=$_SESSION['myusername']; $result_users = mysql_query("SELECT * FROM users WHERE user_name='$reg'"); while($row_users = mysql_fetch_array($result_users)) { $uid=$row_users[id]; } $uploader = $_POST['uploader']; $path = 'photos/'; $image=$_FILES['img_name']; $img_title=$_POST['title']; $img_tag=$_POST['tags']; $img_desc=$_POST['description']; $img_status=$_POST['status']; $lenses_id=$_POST['lenses']; $cam_id=$_POST['cams']; $date = date("dmY"); //------------------------------------------ $image_size=$_FILES['img_name']['size']; $filename = stripslashes($_FILES['img_name']['name']); $extension = getExtension($filename); $extension = strtolower($extension); $image_name=time().'.'.$extension; $newname=$path.$image_name; $copied = copy($_FILES['img_name']['tmp_name'], $newname); if ($copied) { $sql=mysql_query("insert into images (uid, lid, imageurl, img_date, imagesize, imagedesc, imagetitle, imagetag, status,cam,lens,user_name,img_w,img_h) VALUES('$uid','$lenses_id','$newname','$date','$image_size','$img_desc','$img_title','$img_tag','$$img_status','$cam_id','$lenses_id','$uploader','$w','$h')"); return true; }else{ echo "<center><h3>There are An Errors In Uploading!</h3></center>"; return false; } } function getExtension($str) { $i = strrpos($str,"."); if (!$i) { return ""; } $l = strlen($str) - $i; $ext = substr($str,$i+1,$l); return $ext; } $reg=$_SESSION['myusername']; $result_users = mysql_query("SELECT * FROM users WHERE user_name='$reg'"); while($row_users = mysql_fetch_array($result_users)) { $getid=$row_users[id]; } 

Мне нужно добавить в эту функцию РЕЗИСТИРОВАТЬ И ИЗОБРАЖЕНИЕ CROP Как и flickr и facebook img, я создал новую папку: / img_croped

Я хочу вставить новое изображение в эту папку (изменить размер и обрезать 58 * 58 пикселей)

а также :

  mysql_query("insert into images (small_img) VALUES('$croped')"); // URL VALUE 

Related of "Редактировать и обрезать загруженное изображение"

Чтобы изменить размер и обрезать изображение, посмотрите ниже код, который помогает обрезать изображение:

 <?php if( isset($_POST['submit']) ) { include('SimpleImage.php'); $image = new SimpleImage(); $image->load($_FILES['uploaded_image']['tmp_name']); $image->resizeToWidth(300); $image->resizeToHeight(200); $image->save('resizeImage.jpg'); //$image->output(); } else { ?> <form action="" method="post" enctype="multipart/form-data"> <input type="file" name="uploaded_image" /> <input type="submit" name="submit" value="Upload" /> </form><?php } ?> в <?php if( isset($_POST['submit']) ) { include('SimpleImage.php'); $image = new SimpleImage(); $image->load($_FILES['uploaded_image']['tmp_name']); $image->resizeToWidth(300); $image->resizeToHeight(200); $image->save('resizeImage.jpg'); //$image->output(); } else { ?> <form action="" method="post" enctype="multipart/form-data"> <input type="file" name="uploaded_image" /> <input type="submit" name="submit" value="Upload" /> </form><?php } ?> 

Проверьте эту ссылку (мертвый), чтобы найти класс изображения с изменением размера и более подробную информацию.

Вы можете попробовать imagemagick для этого:

 exec( "convert $newname -resize 58x58^ -gravity center -extent 58x58 /img_croped/$filename"); 

Это уменьшит размер более короткой стороны до 58, а затем обрезает более длинную сторону до 58 пикселей (срезающие края)