Ver Mensaje Individual
  #1 (permalink)  
Antiguo 31/08/2010, 19:33
carlitosarce
 
Fecha de Ingreso: agosto-2010
Mensajes: 1
Antigüedad: 13 años, 7 meses
Puntos: 0
Problema al grbar imagenes en mysql y php

EL tamano iriginal de la imagen es de 1400 x 1050
si la imagen es mayor a 600 de ancho entonces quiero reducir la imagen a 600 x 450 y ademas hacer una imagen pequena de 97 x 97 maximo

* el problema que tengo es que la imagen no se graba correctamente en la base de datos, unicamente graba 14 kb, no tengo idea de cual sea el problema
la base de datos tiene la siguiente estructura:

id = int(11)
imagennormal = blob
imagenmini = minimunblob


<?php
$mimetypes = array("image/jpeg", "image/pjpeg", "image/gif", "image/png");
$name = $_FILES["imagen"]["name"];
$type = $_FILES["imagen"]["type"];
$tmp_name = $_FILES["imagen"]["tmp_name"];
$tmp_mini = $_FILES["imagen"]["tmp_name"];
$tamano = $_FILES["imagen"]["size"];

$size = GetImageSize("$tmp_name");
$anchura=$size[0];
$altura=$size[1];

$maximo = 453600; //150Kb
$conti = 1;
if ( $tamano > $maximo ){
$error = "El tamano de la imagen no debe exceder los 150kb";
$conti = 0;
}

if(!in_array($type, $mimetypes)) {
$error = "El archivo que este intentando subir no es una imagen valida";
$conti = 0;
}

if ( $conti == 0 ){
echo $error;
} else {
$ancho_antiguo = $anchura;
$alto_antiguo = $altura;

#Sacar imagen tamano grande
if ( $anchura > 600 ){
$porcentaje = 600 / $anchura;
$porcentaje = substr($porcentaje,2,20);
$porcentaje = substr($porcentaje,0,2).".".substr($porcentaje,2,1 8);
$anchura = 600;
$altura = ( $altura * $porcentaje ) / 100;
}
if ( $altura > 480 ){
$porcentaje = 480 / $altura;
$porcentaje = substr($porcentaje,2,20);
$porcentaje = substr($porcentaje,0,2).".".substr($porcentaje,2,1 8);
$altura = 480;
$anchura = ( $anchura * $porcentaje ) / 100;
}
#Sacar miniatura
$mini_anchura = $anchura;
$mini_altura = $altura;
if ( $mini_anchura > 97 ){
$porcentaje = 97 / $mini_anchura;
$porcentaje = substr($porcentaje,2,20);
$porcentaje = substr($porcentaje,0,2).".".substr($porcentaje,2,1 8);
$mini_anchura = 97;
$mini_altura = ( $mini_altura * $porcentaje ) / 100;
}
if ( $mini_altura > 97 ){
$porcentaje = 97 / $mini_altura;
$porcentaje = substr($porcentaje,2,20);
$porcentaje = substr($porcentaje,0,2).".".substr($porcentaje,2,1 8);
$mini_altura = 97;
$mini_anchura = ( $mini_anchura * $porcentaje ) / 100;
}
header("Content-Type: image/jpeg");

$zisenormal = imagecreatetruecolor($anchura, $altura);
$origen = imagecreatefromjpeg($tmp_name);
imagecopyresized($zisenormal, $origen, 0, 0, 0, 0, $anchura, $altura, $ancho_antiguo, $alto_antiguo);

$zisemini = imagecreatetruecolor($mini_anchura, $mini_altura);
$origen = imagecreatefromjpeg($tmp_mini);
imagecopyresized($zisemini, $origen, 0, 0, 0, 0, $mini_anchura, $mini_altura, $ancho_antiguo, $alto_antiguo);

$agregar = "INSERT INTO `booking`.`galeria_de_imagenes` (`id`, `imagennormal`, `imagenmini`) VALUES (NULL, '".$zisenormal."', '".$zisenormal."');";

$conexio = mysql_connect("localhost","root","");
mysql_select_db ("imagenes", $conexio) OR die ("No se puede conectar");
$result=mysql_query($agregar,$conexio);
}
?>