Jump to content

REsizing pictures


tommy20

Recommended Posts

How can you put in code to stop a timeout occuring when I try resize pictures over approx. 1mb

 

the resizing works perfectly for smaller files.

 

 

 

The code is

 

 

 

// rename image to something else so it does get mixed up with oter variables called image

// The file

$filename = "./images/$horseid.jpg";

 

// Set a maximum height and width

$width = 600;

$height = 600;

 

// Content type

header('Content-type: image/jpeg');

 

// Get new dimensions

list($width_orig, $height_orig) = getimagesize($filename);

 

$ratio_orig = $width_orig/$height_orig;

 

if ($width/$height > $ratio_orig) {

  $width = $height*$ratio_orig;

} else {

  $height = $width/$ratio_orig;

}

 

// Resample

$image_p = imagecreatetruecolor($width, $height);

$image = imagecreatefromjpeg($filename);

imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);

 

$savelocation="./images/$horseid.jpg";

 

// Output

imagejpeg($image_p, $savelocation, 100);

 

 

 

 

// repeat to create small file

 

 

// The file

$filename = "./images/$horseid.jpg";

 

// Set a maximum height and width

$width = 300;

$height = 200;

 

// Content type

header('Content-type: image/jpeg');

 

// Get new dimensions

list($width_orig, $height_orig) = getimagesize($filename);

 

$ratio_orig = $width_orig/$height_orig;

 

if ($width/$height > $ratio_orig) {

  $width = $height*$ratio_orig;

} else {

  $height = $width/$ratio_orig;

}

 

// Resample

$image_small = imagecreatetruecolor($width, $height);

$image = imagecreatefromjpeg($filename);

imagecopyresampled($image_small, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);

 

$savelocation="./images/".$horseid."_small.jpg";

// Output

imagejpeg($image_small, $savelocation, 100);

 

 

Link to comment
https://forums.phpfreaks.com/topic/181925-resizing-pictures/
Share on other sites

if you have safe_mode turned off, you can change this value using ini_set():

 

<?php
ini_set ('max_execution_time', 'any_number_here');
?>

 

you can check if you have safe_mode on or off by creating and uploading a php_info.php file to your server:

 

php_info.php

<?php
phpinfo();
?>

 

now upload that to your server, point to that file, and search for safe_mode .. delete php_info.php from your server afterward.

 

.htaccess:

 

php_value max_execution_time 60

 

change 60 to whatever number you like.

 

keep in mind, some servers will not allow for any changes being made to the php.ini file.

Link to comment
https://forums.phpfreaks.com/topic/181925-resizing-pictures/#findComment-959562
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.