How to upload and resize image in PHP ?

How to upload and resize image in PHP ?

In this post we will give you information about How to upload and resize image in PHP ?. Hear we will give you detail about How to upload and resize image in PHP ?And how to use it also give you demo for it if it is necessary.

After a long time i am going to share something with you friends. But Anyway Today i will show you how to generate thumbnail image in PHP. Here i will make very simple code to upload image and resize that image too.

As we know well images are very important to display on our website. As specially when if you require small size of image and you are displaying big image then it can be take more time to load. So your photos should be resize able or need to generate thumbnail when user upload those images. So here i will explain how to create thumbnail image in your code php project.

Here, i use core php code so you can easily use in your project or any php framework like laravel, codeigniter, cackephp etc. In this example i will create two file as listed bellow:

index.php

pro.php

In this example you can generate thumbnail image of png, jpg, jpeg, gif too. So make sure you have to upload with given extension. So just let’s see bellow code and copy paste in your file then check it.

index.php

<!DOCTYPE html>

<html>

<head>

<title>PHP Image resize to upload</title>

</head>

<body>


<div >

<form action="pro.php" method="post" enctype="multipart/form-data">

<input type="file" name="image" />

<input type="submit" name="submit" value="Submit" />

</form>

</div>


</body>

</html>


pro.php

<?php


if(isset($_POST["submit"])) {

if(is_array($_FILES)) {


$file = $_FILES['image']['tmp_name'];

$sourceProperties = getimagesize($file);

$fileNewName = time();

$folderPath = "upload/";

$ext = pathinfo($_FILES['image']['name'], PATHINFO_EXTENSION);

$imageType = $sourceProperties[2];


switch ($imageType) {


case IMAGETYPE_PNG:

$imageResourceId = imagecreatefrompng($file);

$targetLayer = imageResize($imageResourceId,$sourceProperties[0],$sourceProperties[1]);

imagepng($targetLayer,$folderPath. $fileNewName. "_thump.". $ext);

break;


case IMAGETYPE_GIF:

$imageResourceId = imagecreatefromgif($file);

$targetLayer = imageResize($imageResourceId,$sourceProperties[0],$sourceProperties[1]);

imagegif($targetLayer,$folderPath. $fileNewName. "_thump.". $ext);

break;


case IMAGETYPE_JPEG:

$imageResourceId = imagecreatefromjpeg($file);

$targetLayer = imageResize($imageResourceId,$sourceProperties[0],$sourceProperties[1]);

imagejpeg($targetLayer,$folderPath. $fileNewName. "_thump.". $ext);

break;


default:

echo "Invalid Image type.";

exit;

break;

}


move_uploaded_file($file, $folderPath. $fileNewName. ".". $ext);

echo "Image Resize Successfully.";

}

}


function imageResize($imageResourceId,$width,$height) {


$targetWidth =200;

$targetHeight =200;


$targetLayer=imagecreatetruecolor($targetWidth,$targetHeight);

imagecopyresampled($targetLayer,$imageResourceId,0,0,0,0,$targetWidth,$targetHeight, $width,$height);


return $targetLayer;

}

?>

Create Upload Folder

In this step, you don’t have to do more, you have to simple create “upload” folder in your root directory. So let’s simple create upload folder now.

Ok, now we are ready to run our example. So let’s run bellow command on your root directory for quick run:

php -S localhost:8000

Now you can open bellow URL on your browser:

Also see:PHP MySQL confirmation box before delete record using jquery ajax

http://localhost:8000

I hope it can help you…

Hope this code and post will helped you for implement How to upload and resize image in PHP ?. if you need any help or any feedback give it in comment section or you have good idea about this post you can give it comment section. Your comment will help us for help you more and improve us. we will give you this type of more interesting post in featured also so, For more interesting post and code Keep reading our blogs

For More Info See :: laravel And github

Leave a Comment

Your email address will not be published. Required fields are marked *

  +  47  =  57

We're accepting well-written guest posts and this is a great opportunity to collaborate : Contact US