Looking for ?

Translate

php resize image on upload(Get code)

if you want a php script that resize image proportionally with max width or height. refer to below code
//OperaminiTech 
$fname = $_FILES['image']['tmp_name'];
$size
= getimagesize($fname);
$ratio
= $size[0]/$size[1]; // width/height
if( $ratio > 1) {
$width
= 500;
$height
= 500/$ratio;
}
else {
$width
= 500*$ratio;
$height
= 500;
}
$src
= imagecreatefromstring(file_get_contents($fname));
$dst
= imagecreatetruecolor($width,$height);
imagecopyresampled
($dst,$src,0,0,0,0,$width,$height,$size[0],$size[1]);
imagedestroy
($src);
imagepng
($dst,$target_filename_here); // adjust format as needed
imagedestroy
($dst);
 
or you can use the below code 
 
 
PHP and HTML(index.php)

This file holds the basic of file uploading html markup and simple php upload handler. 
<?php
include
( 'function.php');
// settings
$max_file_size
= 1024*200; // 200kb
$valid_exts
= array('jpeg', 'jpg', 'png', 'gif');
// thumbnail sizes
$sizes
= array(100 => 100, 150 => 150, 250 => 250);

if ($_SERVER['REQUEST_METHOD'] == 'POST' AND isset($_FILES['image'])) {
if( $_FILES['image']['size'] < $max_file_size ){
// get file extension
$ext
= strtolower(pathinfo($_FILES['image']['name'], PATHINFO_EXTENSION));
if (in_array($ext, $valid_exts)) {
/* resize image */
foreach ($sizes as $w => $h) {
$files
[] = resize($w, $h);
}

} else {
$msg
= 'Unsupported file';
}
} else{
$msg
= 'Please upload image smaller than 200KB';
}
}
?>
<html>
<head>
<title>Image resize while uploadin</title>
<head>
<body>
<!-- file uploading form -->
<form action="" method="post" enctype="multipart/form-data">
<label>
<span>Choose image</span>
<input type="file" name="image" accept="image/*" />
</label>
<input type="submit" value="Upload" />
</form>
</body>
</html>
 
 
 
 
Resize Function(function.php):
Resize function is based on PHP GD library.
/**
 *OperaminiTech

 * Image resize
* @param int $width
* @param int $height
*/

function resize($width, $height){
/* Get original image x y*/
list
($w, $h) = getimagesize($_FILES['image']['tmp_name']);
/* calculate new image size with ratio */
$ratio
= max($width/$w, $height/$h);
$h
= ceil($height / $ratio);
$x
= ($w - $width / $ratio) / 2;
$w
= ceil($width / $ratio);
/* new file name */
$path
= 'uploads/'.$width.'x'.$height.'_'.$_FILES['image']['name'];
/* read binary data from image file */
$imgString
= file_get_contents($_FILES['image']['tmp_name']);
/* create image from string */
$image
= imagecreatefromstring($imgString);
$tmp
= imagecreatetruecolor($width, $height);
imagecopyresampled
($tmp, $image,
0, 0,
$x
, 0,
$width
, $height,
$w
, $h);
/* Save image */
switch ($_FILES['image']['type']) {
case 'image/jpeg':
imagejpeg
($tmp, $path, 100);
break;
case 'image/png':
imagepng
($tmp, $path, 0);
break;
case 'image/gif':
imagegif
($tmp, $path);
break;
default:
exit;
break;
}
return $path;
/* cleanup memory */
imagedestroy
($image);
imagedestroy
($tmp);
}  

SHARE THIS POST

About Wakabia

    Blogger Comment
    Facebook Comment

0 comments:

Post a Comment