Portada | Monotemáticos | Secciones | Desarrolladores | Comunidad | Servicios | Servicios profesionales | RSS
Desde 0 | HTML | CSS | ASP | PHP | AJAX | Javascript | Promoción de webs | Rentabilidad de webs
Directorio | Manuales | Scripts | FAQs | Programas | Artículos Copyleft | Actualidad | La Cosecha | Colabora
Registrarse | Vuestras páginas | Foros del web | Lista de correo | Boletín de novedades
Generador METAs | Compras | Busca cursos
Alojamiento | Dominios.es | Micropagos SMS | Buscadores | Patentes, marcas | Creación web | Multimedia | Videos
Desarrollo Freelance | Buscar proyectos | Buscar profesionales | Solicitar desarrollo

Cargar imagen en PHP

Hola chicos, estoy haciendo una página en php en la que una persona a través de un formulario puede subir una noticia, mi idea es que tambien pueda subir una imagen. Ahora para que la casa se vea bien cuando voy a la seccion noticias, mi idea es crear una nueva imagen a partir de la cargada, con los tamaños que se ajusten a la página.

Al parecer la biblioteca GD es la apropiada, estoy en lo correcto???

La FAQ Cargar imagen en PHP tiene Pertenece a la categoría:


 Respuesta de Sara Álvarez  18/7/05 
Lo primero que debes hacer es aprender a hacer upload de ficheros al servidor. Así, cuando cargues una noticia en la base de datos también podrás cargar un archivo que se puede utilizar como imagen.

Luego, una vez cargada la imagen la puedes procesar utilizando las funciones de imagen de php, que utilizan las librerías GD para procesar y editar imágenes con el propio servidor web.

Solo tienen un par de problemas: Por un lado tienes que saber que el procesamiento de imágenes consume recursos del servidor, así que si tu sitio tiene muchas cargas o procesamientos de imágenes, tendrías que tener cuidado que no se sature. Por otro lado, el procesamiento de la imagen directamente con PHP no da tanta calidad de imagen como puede dar editarla con un programa tipo Photoshop.

En DesarrolloWeb.com tenemos un manual dedicado a la biblioteca gráfica GD donde veras las propiedades y funcionalidades de esta librería de funciones para tratamiento de imágenes.

Complementar la respuestaComplementar la respuesta
Volver al árbol de categoríasVolver al árbol de categorías

 Comentarios de los visitantes
Se muestran 4 comentarios revisados

 Comentario de Jorge Molina
21/7/05 
Creo que tu idea esta bien, pero hay un detalle que se te escapó.
La imagen que quieres mostrar puede ser redimensionada al cargarla en el servidor, generando de esta forma una imagen que tenga el tamaño justo para mostrarla.
Existen codigos en PHP para lograr hacer esto. A continuación copio uno que modifique desde uno para crear miniaturas.

En ancho puedes fijar el valor o pasarlo por get o post. En $file debes poner el nombre de archivo logicamente. La variable $copia es el nombre de la imagen cambiada de tamaño.

En el codigo puedes poner un mensaje de "Estamos procesando" o poner como ultima linea un codigo para enviar a otra pagina.
[header("Location:pagina.php");]

<?php
$ancho= "600";
$file="1.jpg";

$rest = pathinfo($file);
$rest = $rest["extension"];

// header("Content-type: image/jpeg");

$size=getimagesize($file);
$width=$size[0];
$height=$size[1];
if ($width > $ancho)
{
$newwidth = $ancho;
$newheight=intval($height*$newwidth/$width);

$oldimage=imagecreatefromjpeg($file);

$newimage=ImageCreateTrueColor($newwidth,$newheight);
ImageCopyResampled($newimage,$oldimage,0,0,0,0,$newwidth,$newheight,$width,$height);

$copia="2.jpg";

imagejpeg($newimage,$copia);

imagedestroy($newimage);
imagedestroy($oldimage);
}
?>


Espero que te sirva.

 Comentario de Gemu
26/7/05 
Si lo que necesitas es aprender a subir archivos desde una pagina web, la respuesta la tienes en el manual de php, esta muy bien documentada: http://www.php.net/manual/es/features.file-upload.php

La forma es muy simple, en tu formulario debes colocar en la etiqueta <form> lo sig. enctype="multipart/form-data", para indicar que enviaras archivos binarios, luego el campo para enviar archivos debe ser del tipo "file" <input name="userfile" type="file"> (automaticamente se agrega un boton de "examinar"), despues solo resta enviar....el servidor se encarga de recibir tu archivo y colocarlo en un directorio temporal con un nombre tambien temporal....luego desde php usas la matriz $_FILES[] para obtener todos los datos del archivo y copiarlo o moverlo a donde quieras en tu sitio....eso esta muy bien explicado en el manual.

 Comentario de Luis
02/9/05 
Introduce tu comentario...Y si lo que quieres no es guardar la imagen en si sino guardar su direccion en la bese de datos pero utilizando tambien el input,¿Como lo haces???

 Comentario de Christian González
16/9/05 
pues lo que tienes que hacer tambien en luego de haberla copiado o movido hacer un insert a la base de datos, el nombre del archivo lo obtienes de $_FILES[nombre_del_campo_file][]name] o si lo copiaste con otro nombre sería $directorio_destino.$nombre_nuevo

Christian González
www.christiangonzalez.tk

 Comentarios sin revisar
Entre los comentarios no revisados puede haber algunos interesantes que se hayan enviado recientemente.
 Se han encontrado 2 comentarios sin revisar

Ver el comentario no revisadoVer los comentarios no revisados
 
FAQ relacionadas
  + Webmail en PHP
  + Leer un archivo texto en el navegador con PHP
  + Colocar un foro en mi página web
  + Envío de mails con PHP
  + Mostrar el listado de archivos de un directorio
  + Crear una encuesta en PHP
  + Contador con imágen
  + Contador de páginas PHP
  + Variables $_SERVER en PHP
  + Separar código HTML y PHP
  + Que es el protocolo SOAP
  + Envio de postales con PHP
  + Libro de visitas en PHP
  + Versiones para OsCommerce
  + Idiomas en una página web
  + Varios botones en un formulario con PHP
  + Formatear decimales en PHP
  + Sistema de encuestas en PHP
  + Lista de correo en servidor PHP
  + Números aleatorios decimales en PHP
  + Recoger el nombre de la URL en php
  + Galerías de imágenes en PHP
  + Carro de la compra con programación PHP
  + Convertir texto con saltos de línea a HTML mediante PHP
  + Extraer un trozo de texto
  + Contador de visitas
  + Pasar de '06' a '6' en PHP
  + Obtener la hora en un servidor PHP
  + Fotos animadas con poco peso
  + Poner cursor mano en un enlace a name
  + Autenticación con PHP y md5
  + Tiempo excedido en ejuctar script
  + Leer caracteres PHP
  + No ejecuta las sentencias PHP mi Wamp Server 2
  + Listar archivos de diferentes carpetas
  + Cambiar una linea de un txt
  + Subir archivos al servidor desde PHP
  + Problema para visualizar archivos subidos con upload desde PHP

Complementar la respuestaComplementar la respuesta
Volver al árbol de categoríasVolver al árbol de categorías

DesarrolloWeb.com | Copyright | Anunciese | Acerca de | Datos legales | Contacta | Por GuiarteMultimedia