Hola:
Estoy tratando de redimensionar las imagenes que los usuarios cargan por medio de la página, pero me da estos errores porque no lee la imagen. Esta si se guarda pero el código no la lee. Este es mi código:
<?
session_start();
$_SESSION['xxxx'] = $xxxxxx;
// incluye los archivos de función para esta aplicación
require_once("funciones.php");
$fecha = $_POST['fecha'];
$tienda = $_POST['tienda'];
$producto = $_POST['producto'];
$conexion = db_connect();
if (!$conexion)
return 0;
//empieza la redimension, tomamos la imagen temporal subida
$archivo = getimagesize($_FILES['foto']['tmp_name']);
$archivo = explode('.', stripslashes($_FILES['foto']['tmp_name']));
unset($archivo[count($archivo)-1]);
$archivo = implode('.', $archivo);
switch ($archivo[2]) {
case 1:
$imagen = imagecreatefromgif($_FILES['foto']['tmp_name']); break;
case 2:
$imagen = imagecreatefromjpeg($_FILES['foto']['tmp_name']); break;
case 3:
$imagen = imagecreatefrompng($_FILES['foto']['tmp_name']); break;
// etcétera //
}
$original = $imagen;
$original_w = imagesx($original);
$original_h = imagesy($original);
$max = 175; //AQUI PONES EL TAMAÑO DE LA IMAGEN A LO QUE QUIERAS
if($original_w>$original_h) {
$muestra_w = $max;
$muestra_h = intval(($original_h/$original_w)*$max);
} else {
$muestra_w = intval(($original_w/$original_h)*$max);
$muestra_h = $max;
}
$muestra = imagecreatetruecolor($muestra_w,$muestra_h);
$muestra = imagecreatetruecolor($muestra_w,$muestra_h);
imagecopyresampled($muestra,$original,0,0,0,0, $muestra_w,$muestra_h,$original_w,$original_h);
imagedestroy($original); // aqui destruyo el original, pues no hace falta ya
// me verifica haya sido cargado el archivo
$ruta_destino = "../fotos/";
$namefinal= trim ($_FILES['foto']['tmp_name']);//quito espacios finales o al principio del nombre si los hay
$namefinal= ereg_replace (" ", "", $namefinal);//quito los espacios entre las palabtas del nombre si los hay
$uploadfile= $ruta_destino . $namefinal;
if(imagejpeg($muestra,$uploadfile,'100')) { // se coloca en su lugar final
echo "<b>Upload exitoso!. Datos:</b><br>";
echo "Nombre: <i><a href=\"".$uploadfile."\">".$_FILES['foto']['tmp_name']."</a></i><br>";
echo "Tipo MIME: <i>".$_FILES['foto']['type']."</i><br>";
echo "Peso: <i>".$_FILES['foto']['size']." bytes</i><br>";
echo "<br><hr><br>";
}
//Insercion de los datos, ojo la imagen se graba con su nombre original en la tabla (es un campo varchar)
$sql_ins = "INSERT INTO products (fecha, tienda, producto, sku) " .
"VALUES ('$fecha', '$tienda', '$producto', '$archivo')";
$res = mysql_query($sql_ins) or die ( "Error MySQL dice: " . mysql_error() );
?>
Me da los siguientes errores:
Warning: imagesx(): supplied argument is not a valid Image resource in C:\AppServ\www\phpMyAdmin\xxxx.php on line 44
Warning: imagesy(): supplied argument is not a valid Image resource in C:\AppServ\www\phpMyAdmin\xxxx.php on line 45
Warning: Division by zero in C:\AppServ\www\phpMyAdmin\xxxx.php on line 53
Warning: imagecreatetruecolor() [function.imagecreatetruecolor]: Invalid image dimensions in C:\AppServ\www\phpMyAdmin\xxxx.php on line 57
Warning: imagecreatetruecolor() [function.imagecreatetruecolor]: Invalid image dimensions in C:\AppServ\www\phpMyAdmin\xxxx.php on line 59
Warning: imagecopyresampled(): supplied argument is not a valid Image resource in C:\AppServ\www\phpMyAdmin\xxxx.php on line 61
Warning: imagedestroy(): supplied argument is not a valid Image resource in C:\AppServ\www\phpMyAdmin\xxxx.php on line 62
Warning: imagejpeg(): supplied argument is not a valid Image resource in C:\AppServ\www\phpMyAdmin\xxxx.php on line 69
Por favor me pueden ayudar a saber que error tengo en el código.
Gracias