Ahhh ctm... toy desesperado. No se donde está el error. Le he puesto valores a mano y sigue sin funcionar.
Código PHP:
<?php
if (isset($_GET['id_cat']))
{
$id_cat = $_GET['id_cat'];
}
$datos_categoria = mostrar_categoria_id($id_cat);
$resultado = mysql_query($datos_categoria);
if ($valor = mysql_fetch_array($resultado))
{
$id_cat = $valor[0];
$titulo_cat = $valor[1];
$detalle_cat = $valor[2];
$path_thumb_cat = $valor[4];
$orden_cat = $valor[5];
}
$datos_fotos = mostrar_fotosporcat($valor[0]);
$resfotos = mysql_query($datos_fotos);
if (isset($_POST['add_foto']))
{
//Inicializar variables
$id_cat = "";
$n_foto1 = "";
$id_cat = $_POST['id_cat'];
//Recibo Ficheros - Foto Thumb
$n_foto1 = $_FILES['foto1']['name'];
$n_foto1_tmp = $_FILES['foto1']['tmp_name'];
$n_foto1_size = $_FILES['foto1']['size'];
$n_foto1_type = $_FILES['foto1']['type'];
//DEBUG VARIABLES Y FUNCIONAMIENTO GENERAL
echo $id_cat."<br />";
echo $n_foto1."<br />";
echo $n_foto1_tmp."<br />";
echo $n_foto1_size."<br />";
echo $n_foto1_type."<br />";
//Si el alto máximo es superado, se detiene la carga y welta patrá! xDD
list($ancho_original, $alto_original, $tipo_original, $alternativo) = getimagesize($n_foto1_tmp);
if ($alto_original > 393)
{
echo "<script>alert('El alto maximo es 393px. La imagen va a ser redimensionada.');</script>";
/********************************************************/
/* PRIMERAS PRUEBAS DE REDIMENSIONAMIENTO */
echo "Ancho Original: " .$ancho_original."<br />";
echo "Alto Original: " .$alto_original."<br />";
echo "Tipo de Foto: " .$tipo_original."<br />";
//ALTO MAXIMO
$alto_final = 393;
//DIRECTORIO DONDE CAERAN LAS IMAGENES REDIMENSIONADAS
//$directorio = 'images/grandes';
//SI IMAGEN CARGADA ES GIF
if($tipo == 1){$img = imagecreatefromgif($n_foto1);}
//SI IMAGEN CARGADA ES JPG/JPEG/PJPEG
if($tipo == 2 ) { $img = imagecreatefromjpeg($n_foto1);}
//SI IMAGEN CARGADA ES PNG
if($tipo == 3){$img = imagecreatefrompng($n_foto1);}
//CALCULO DE RANGOS PARA HACER REDIMENSIONADO SIN AFECTAR LA PROPORCION
echo $img;
if ($alto_original > $alto_final)
{
$ancho_final = "";
$ancho_final = $ancho_original * $alto_final/$alto_original;
}
echo $ancho_final."<br />";
echo $alto_final."<br />";
//die();
//CREACIÓN DE NUEVO LIENZO DONDE SE SE PEGARÁ EL CACHE DE CREACIÓN DE IMAGECREATEFROM-TYPE
$thumb = imagecreatetruecolor($ancho_final,$alto_final);
//PEGA EL CACHE DE CREACIÓN AL LIENZO RECIÉN CREADO.
//LIENZO, CACHE, X LIENZO, Y LIENZO, X CACHE, Y CACHE, ANCHO FINAL,ALTO FINAL, ANCHO ORIGINAL, ALTO ORIGINAL.
imagecopyresampled($thumb, $img, 0, 0, 0, 0, $ancho_final, $alto_final, imagesx($n_foto1_tmp), imagesy($n_foto1_tmp));
if ($tipo == 1)
{
imagegif($thumb, $n_foto1_tmp);
}
if ($tipo == 2)
{
imagejpeg($thumb, $n_foto1_tmp, 100);
}
if ($tipo == 3)
{
imagepng($thumb, $n_foto1_tmp);
}
}
//Eliminamos archivo temporal
//unlink($nombre);
//LIMPIAMOS EL CACHE DE CREACIÓN USADO POR IMAGECREATEFROM-TIPO
//imagedestroy ($img);
if ($n_foto1 == '') //SIN FOTO
{
$n_foto1 = "";
$sin_foto1 = "TRUE";
echo "<script>alert('No ha seleccionado ninguna imagen o el formato de imagen es incorrecto.');</script>";
echo "<script type=\"text/javascript\">window.location = 'javascript:history.go(-1)';</script>";
die();
} else if ($n_foto1 != '')// CON FOTO
{
$n_foto1 = renombrar($n_foto1);
$sin_foto1 = "FALSE";
}
//Funciones de Carga al Servidor
$upload_dir = "http://www.forosdelweb.com/images/grandes/";
//Mover direccion temporal de FOTO 1 a DIRECCION FINAL en images/noticias/chicas
if ($sin_foto1 != "TRUE")
{
$n_path_foto1 = $upload_dir . $n_foto1;
$resultado1 = move_uploaded_file($n_foto1_tmp, $n_path_foto1);
if (!$resultado1)
{
echo 'Error, La consulta falló luego de subir archivo : '.mysql_error();
exit;
die();
}
}
//***********************************************************
//Aca deben incluirse los datos de conexion de base de datos.
//***********************************************************
if (!get_magic_quotes_gpc())
{
$n_foto1 = addslashes($n_foto1);
$n_path_foto1 = addslashes($n_path_foto1);
}
$sql="INSERT INTO tabla (id_cat, nom_foto, path_foto, orden_foto)
VALUES ('".$id_cat."',
'".$n_foto1."',
'".$n_path_foto1."', '1')";
//echo $sql;
$resultado_add = mysql_query($sql);
if (!$resultado_add)
{
echo 'Error, La consulta falló tratando de ingresar a bd : '.mysql_error();
}
else {
echo "<script>alert('Imagen agregada correctamente.');</script>";
//echo "<script>window.location = 'admin.php?op=catfotos_add&id_cat=".$id_cat."'; </script>";
}
}
?>
Me dice un error:
Código:
Warning: imagesx(): supplied argument is not a valid Image resource in C:\Archivos de programa\xampp\xampp\htdocs\puntop\admin\seccion\admin_catfotos_add2.php on line 97
Warning: imagesy(): supplied argument is not a valid Image resource in C:\Archivos de programa\xampp\xampp\htdocs\puntop\admin\seccion\admin_catfotos_add2.php on line 97
Warning: imagecopyresampled(): supplied argument is not a valid Image resource in C:\Archivos de programa\xampp\xampp\htdocs\puntop\admin\seccion\admin_catfotos_add2.php on line 97
Y la linea 97 es:
Código:
imagecopyresampled($thumb, $img, 0, 0, 0, 0, $ancho_final, $alto_final, imagesx($n_foto1_tmp), imagesy($n_foto1_tmp));
Por favor, alguna ayuda!!!