Foros del Web » Programando para Internet » PHP »

Redimensionar imágenes

Estas en el tema de Redimensionar imágenes en el foro de PHP en Foros del Web. Hola de nuevo! En mi cruzada de crear un formulario dinámico para subir el contenido a la base de datos con php que recogiera varios ...
  #1 (permalink)  
Antiguo 11/06/2009, 04:32
 
Fecha de Ingreso: mayo-2009
Mensajes: 83
Antigüedad: 14 años, 11 meses
Puntos: 1
Redimensionar imágenes

Hola de nuevo!

En mi cruzada de crear un formulario dinámico para subir el contenido a la base de datos con php que recogiera varios campos incluyendo uno para subir archivos...ya está conseguido!
Ahora me surge la siguiente duda, como puedo hacer para que cuando algún visitante de mi web suba una foto, esta la redimensione al peso correcto, es decir si alguien sube una foto de 300 kb y yo en la base de datos tengo el registro blog que como máximo sirve para 67 kb, como hago para que antes de guardarmela me la rediemnsione a este peso?

Este es mi código actual para insertarla en la base de datos y esta limitado a 67 kb:

Código PHP:
<?php
//Primero, arranca el bloque PHP y checkea si el archivo tiene nombre.  Si no fue asi, te remite de nuevo al formulario de inserción:
// No se comprueba aqui si se ha subido correctamente.
if (empty($_FILES['archivo']['name'])){
header("location: formulario.php?proceso=falta_indicar_fichero"); //o como se llame el formulario ..
exit;
}
$filesize $_FILES['archivo']['size'];
$filetype $_FILES['archivo']['type'];
//verificamos el tipo de archivo y definimos los que se pueden subir
$type substr($filetype, (strpos($filetype,"/"))+1);
$types=array("jpeg","gif");
//marcamos el maximo tamaño del archivo a subir 
 
if ( $filesize && $filesize <= 67000 && in_array($type$types) ) {
 
//establece una conexión con la base de datos.
$conexion mysql_connect("localhost","","") or die("No se pudo realizar la conexion con el servidor.");
mysql_select_db("",$conexion) or die("No se puede seleccionar BD"); // tu_bd es el nombre de la Base de datos .. por siaca.

// archivo temporal (ruta y nombre).
$binario_nombre_temporal=$_FILES['archivo']['tmp_name'] ;

// leer del archvio temporal .. el binario subido.
// "rb" para Windows .. Linux parece q con "r" sobra ...
$binario_contenido addslashes(fread(fopen($binario_nombre_temporal"r"), filesize($binario_nombre_temporal)));

// Obtener del array FILES (superglobal) los datos del binario .. nombre, tabamo y tipo.
$binario_nombre=$_FILES['archivo']['name'];
$binario_peso=$_FILES['archivo']['size'];
$binario_tipo=$_FILES['archivo']['type'];
$tipovivienda=$_POST['tipovivienda'];
$ciudad=$_POST['ciudad'];
$poblacion=$_POST['poblacion'];
$email=$_POST['email'];
$telefono=$_POST['telefono'];
$precio=$_POST['precio'];
$habitaciones=$_POST['habitaciones'];
$banos=$_POST['banos'];
$m2=$_POST['m2'];
$cliente=$_POST['cliente'];
$estado=$_POST['estado'];
$opcion=$_POST['opcion'];
$descripcion=$_POST['descripcion'];
//insertamos los datos en la BD.
$consulta_insertar "INSERT INTO propiedades (referencia, archivo_binario, archivo_nombre, archivo_peso, archivo_tipo, idvivienda, idciudad, poblacion, email, telefono, precio, habitaciones, banos, m2, cliente, estado, opcion, descripcion) VALUES ('', '$binario_contenido', '$binario_nombre', '$binario_peso', '$binario_tipo', '$tipovivienda', '$ciudad', '$poblacion', '$email', '$telefono', '$precio', '$habitaciones', '$banos', '$m2', '$cliente', '$estado', '$opcion', '$descripcion')";
mysql_query($consulta_insertar,$conexion) or die("No se pudo insertar los datos en la base de datos.");
header("location: listar_imagenes.php"); }else{ header("location: formulario.php?proceso=el archivo no puede ser mayor de 67 kb o es un formato no compatible"); }//o como se llame el formulario ..
exit;
?>
  #2 (permalink)  
Antiguo 11/06/2009, 07:11
Avatar de aldo1982  
Fecha de Ingreso: noviembre-2004
Ubicación: Santa Fe (Argentina) Colon F.C
Mensajes: 1.362
Antigüedad: 19 años, 4 meses
Puntos: 6
Respuesta: Redimensionar imágenes

ta lleno de estos post, por favor busca.
__________________
LA MUERTE ESTÁ TAN SEGURA DE VENCER QUE NOS DA TODA UNA VIDA DE VENTAJA
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:12.