Hola a todos, llevo todo el fin de semana buscando la solución al problema y al final he desistido por lo que vengo aquí a pedir consejo a ver si alguien me puede echar un cable.
Estoy "intentando" implementar una función para crear thumbnails y que se suban al server, para ello he creado una función que realiza todo el proceso automáticamente. La primera vez que ejecuto la función me funciona todo perfectamente, pero la segunda vez que la ejecuto con los mismos parámetros me salta un error:
Código PHP:
function resize_and_upload($image, $target_file, $w, $h) {
// Aqui ya me salta el error cuando uso la función por segunda vez
list($width, $height) = getimagesize($image);
$size = resize_img($image, $w, $h);
$new_width = $size[0];
$new_height = $size[1];
move_uploaded_file($image, $target_file);
$new_image = imagecreatetruecolor($new_width, $new_height);
$old_image = imagecreatefromjpeg($target_file);
imagecopyresampled($new_image,$old_image,0,0,0,0,$new_width, $new_height, $width, $height);
imagejpeg($new_image, $target_file, 75);
}
A continuación os pongo el código que uso para implementar la función
Código PHP:
// Esta funcion simplemente coge el ultimo ID de la BDD para que las fotos se vayan ordenando secuencialmente.
$id = ultimo_id();
$destname =$id;
$path = "img/testphotos/tn/";
$destname .= ".jpg";
$filename = $_FILES['file']['tmp_name'];
// Primero creo una imagen de tamaño max. 600x600
resize_and_upload($filename, $path.$destname, 600, 600);
$destname = $id;
$destname .= "_t.jpg";
// Posteriormente creo el thumbnail de dicha imagen de tamaño max. 100x100
// Aqui me genera el error despues de haber creado la imagen anterior correctamente,
// los parametros son exactamente los mismos, solo cambia el tamaño
resize_and_upload($filename, $path.$destname, 100, 100);
El error que me lanza es que no se puede abrir el nombre de fichero que le estoy pasando, algo que me resulta realmente extraño ya que estoy usando exactamente la misma imágen, únicamente he cambiado las proporciones
Warning: getimagesize(/Applications/MAMP/tmp/php/phpRkYWUk) [function.getimagesize]: failed to open stream: No such file or directory in /Applications/MAMP/htdocs/web/login/images.functions.inc.php on line 91
y asi con todas las funciones de resize_and_upload()
Gracias a todo el que me pueda ayudar y un saludo.