Subir imagenes con PHP y class.upload.php


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:

  1. incluir class.upload.php a upload.php
  2. 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.
  3. Verificamos si la imagen se almacena exitosamente.
  4. 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.
  5. 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

upload1_example

Despedida

Espero este ejemplo les ayude, espero sus comentarios, mas adelante seguiremos hablando sobre esta magnifica libreria.

Leave a comment