Subir imagenes a un servidor o a una aplicacion aveces resulta necesario a la hora de desarrollar una aplicacion, en PHP existen muchas maneras y librerias para subir imagenes, pero quizas la que mas he utilizado y recomiendo es class.upload.php de vero.net.
Basicamente se trata de una clase PHP que ademas de ayudarnos a subir imagenes a un servidor tambien nos permite recortar y hacer ciertas tareas de “modificacion a las imagenes”.
La clase class.upload.php se puede descargar desde http://www.verot.net/php_class_upload.htm
Recordemos que lo primero que debemos es configurar un formulario para que acepte el envio de imagenes, ejemplo:
<form enctype="multipart/form-data" method="post" action="upload.php"> <input name="image" required type="file" /><br/> <input type="submit" value="Upload"/> </form>
Una vez que tenemos el formulario ahora vamos a crear el archivo upload.php, el cual sera el que procesara la subida de imagenes.
upload.php
<?php // inserte validacion correspondiente include "class.upload.php"; $image = new Upload($_FILES["image"]); if($image->uploaded){ $image->Process("uploads/"); if($image->processed){ echo "Upload Success"; }else{ echo "Error: ".$image->error; } } ?>
Lo que hacemos en el archivo upload.php es:
- incluir class.upload.php a upload.php
- Crear una instancia de la clase Upload y como parametro le insertamos la variable $_FILES con el nombre del campo de archivo del formulario, esto almacenara la imagen a la memoria usada por la clase.
- Verificamos si la imagen se almacena exitosamente.
- Procesamos la imagen, en caso de que queramos recortar o agregar filtros, si no se procesa la imagen original y como paramereo de la funcion Process incluimos la carpeta donde se guardara la imagen procesada.
- Verificamos si la imagen se proceso correctamente e imprimimos Upload Success, de lo contrario imprimimos Error y el error generado.
Notas finales
Para que todo esto funcione se debe estar trabajando en un entorno de servidor, ya sea local usando XAMPP o utilizando un servicio de hosting web que soporte PHP.
Ejemplo util
A continuacion dejo el siguiente ejemplo util que incluye:
- Formulario
- Archivo upload.php
- Archivo class.upload.php
Despedida
Espero este ejemplo les ayude, espero sus comentarios, mas adelante seguiremos hablando sobre esta magnifica libreria.