Tanto el formulario como el código PHP se encuetran en el mismo documento. A continuación podrán ver y analizar el código, y luego trataré de explicar claramente su funcionamiento:
Código del documento
Funcionamiento del código
Al cargar el archivo con
method="post"
, se genera el array $_FILES[]
, el cual almacena todos las propiedades del archivo, como su nombre, tamaño, tipo, nombre temporal, etc. Lo que hace PHP (línea 15) es verificar si existe un elemento de la array con la clave ['archivo']
, y con ['size'] > 0
compruebo que el tamaño del archivo sea mayor que "0", asegurándome que realmente se haya cargado un archivo.Si las comprobaciones anteriores han resultado exitosas, almaceno en $variables las propiedades del archivo (líneas 18-20).
¿Por qué crear una variable vacía (línea 16)? El trabajo de la variable
$mostrar
será almacenar la imagen una vez se haya cargado correctamente (líneas 26). Así, cuando esto suceda, mostraremos al usuario la imagen que ha cargado recientemente (líneas 38 y 39), sin necesidad de abrir el directorio donde se guarda el archivo.Determino, además, un tamaño máximo para las imágenes (línea 17), de modo que no sobrepasen los 3 megabytes (300000 bytes).
Con la función
GetImageSize()
extraigo información del archivo cargado, como el tipo y el tamaño del mismo. Esta función devuelve la información en forma de array, la cual almaceno en la variable $tipoArchivo
. El tercer elemento de este array, $tipoArchivo[2]
(el índice de los array comienzan por el número 0), tiene que ver con el tipo de archivo de imagen: 1 corresponde al tipo GIF; 2 al tipo JPG; 3 al tipo PNG, y 4 al tipo SWF. En el código compruebo si el archivo cargado es un GIF, JPG o PNG (línea 22).Tras comprobar que el tamaño del archivo no exceda el permitido (línea 23), trasladamos el archivo cargado a otra ubicación con la función
move_uploaded_file()
(línea 24). El primer argumento de la función es el nombre temporal del archivo, el segundo es la ruta de acceso que habíamos definido anteriormente (línea 14), además del nombre que tendrá el archivo en su ubicación final.Si la función tiene éxito, presentamos un par de datos sobre el archivo cargado (línea 25), y almacenamos la ruta y el nombre del archivo en la variable
$mostrar
que habíamos inicializado sin contenido anteriormente. Esta variable mostrará en el navegador el archivo que se ha cargado (líneas 38 y 39).Al hacer click en el botón del segundo formulario (línea 36), desaparecerá el mensaje de confirmación y la imagen de la pantalla, quedando listo para subir otro archivo.
Como pueden apreciar, el formulario y el código es bien sencillo, pero completo a la vez, aunque es posible recurrir a mayores comprobaciones para cargar imágenes. De pronto, el código PHP cumple con su cometido. Más adelante iré añadiendo más opciones y probando otros códigos, los cuales seguiré compartiendo con ustedes.
No hay comentarios:
Publicar un comentario