Este es el último ejemplo que he probado:
Esto es resize.php
Código:
y esto es index.php<?php /* Version 1.0 Created by: Ryan Stemkoski Questions or comments: [email protected] Visit us on the web at: http://www.ipowerplant.com Purpose: This script can be used to resize one or more images. It will save the file to a directory and output the path to that directory which you can display or write to a databse. TO USE, SET: $filename = image to be resized $newfilename = added to filename to for each use to keep from overwriting images created example thumbnail_$filename is how it will be saved. $path = where the image should be stored and accessed. $newwidth = resized width could be larger or smaller $newheight = resized height could be larger or smaller SAMPLE OF FUNCTION: makeimage('image.jpg','fullimage_','imgs/',250,250) Include the file containing the function in your document and simply call the function with the correct parameters and your image will be resized. */ //IMAGE RESIZE FUNCTION FOLLOW ABOVE DIRECTIONS function makeimage($filename,$newfilename,$path,$newwidth,$newheight) { //SEARCHES IMAGE NAME STRING TO SELECT EXTENSION (EVERYTHING AFTER . ) $image_type = strstr($filename, '.'); //SWITCHES THE IMAGE CREATE FUNCTION BASED ON FILE EXTENSION switch($image_type) { case '.jpg': $source = imagecreatefromjpeg($filename); break; case '.png': $source = imagecreatefrompng($filename); break; case '.gif': $source = imagecreatefromgif($filename); break; default: echo("Error Invalid Image Type"); die; break; } //CREATES THE NAME OF THE SAVED FILE $file = $newfilename . $filename; //CREATES THE PATH TO THE SAVED FILE $fullpath = $path . $file; //FINDS SIZE OF THE OLD FILE list($width, $height) = getimagesize($filename); //CREATES IMAGE WITH NEW SIZES $thumb = imagecreatetruecolor($newwidth, $newheight); //RESIZES OLD IMAGE TO NEW SIZES imagecopyresized($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); //SAVES IMAGE AND SETS QUALITY || NUMERICAL VALUE = QUALITY ON SCALE OF 1-100 imagejpeg($thumb, $fullpath, 60); //CREATING FILENAME TO WRITE TO DATABSE $filepath = $fullpath; //RETURNS FULL FILEPATH OF IMAGE ENDS FUNCTION return $filepath; } ?>
Código:
Cuando lo pruebo en local, con el xampp, me funciona perfectamente, me crea el thumbnail, me crea un archivo llamado "thumbnail_retrato.jpg", perfecto. Pero cuando lo subo al hospedaje no funciona, no crea el thumbnail.<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>Untitled Document</title> </head> <? include("resize.php"); ?> <body> <table width="813" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="231" height="19"><strong>ORGINAL IMAGE:</strong></td> </tr> <tr> <td height="19"><img src="retrato.jpg"></td> </tr> </table> <p> </p> <table width="813" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="231" height="19"><strong>RESIZED IMAGE:</strong></td> </tr> <tr> <td height="19"><img src="<? echo(makeimage('retrato.jpg','thumbnail_','',200,250)); ?>"></td> </tr> </table> </body> </html>
¿¿Alguien puede ayudarme??
Tengo el hospedaje con www.hospedajeydominios.com, ¿alguien más lo tiene ahí? ¿alguien que pueda decirme cómo hacer funcionar esto?
Edito:
Desde la atención al cliente del hospedaje me escriben que es un hospedaje con php4 (safe mode), y que revise que el código sea compatible con esto.