Libro de Visitas Gratis
Inicio | Directorio de Páginas | Diseño Gráfico | Gadgets | Posicionamiento | Webmasters| Buscador de Artículos | Glosarios

Upload de archivos

Añade Tu Web Al Directorio de NocionDigital.com
Aunque parezca una tarea muy dificil, subir archivos al servidor por medio de PHP es muy sencillo.

En Internet existen muchos sitios que ofrecen complejas librerías y sistemas para realizar uploads de archivos al servidor, pero la verdad es que con un sencillo formulario y una página PHP igualmente sencilla, logramos realizar esta tarea relativamente bien.

Para empezar debemos crear un formulario cualquiera con dos particularidades: un atributo adicional en la etiqueta FORM y un campo tipo "file" que permite examinar el PC en busca de cualquier archivo. Usaremos este campo para tomar el archivo a subir.







Como puedes obsevar hay un campo especial que nos permite buscar entre nuestros discos el archivo que desemos subir. Finalmente se debe tener mucho cuidado de NO olvidar el atributo "enctype" en la etiqueta FORM para que todo funcione bien.

En el código del formulario se puede observar que la página PHP que recibirá el formulario y realizará el Upload se llama upload.php.

upload.php
En esta página realizaremos una pequeñas validación para que el Upload se ejecute de la mejor forma. Primero verificamos que el campo de archivo no esté vacío. Si es el caso mostramos un mensaje, de lo contrario iniciamos el Upload.

Esto se puede aclarar un poco más con el codigo mismo de upload.php:


if($archivo !="")
{
@copy($archivo, $archivo_name);
echo "Upload realizado";
}
else
{
echo "Debes completar el campo para hacer el Upload";
}
?>


Primero verificamos que el campo "archivo" ($archivo) no esté vacío. Si efectivamente hay algo que subir entonces procedemos a ejecutar la función copy() que se encargará del Upload.

A la funcion copy() se le deben pasar dos parámetros, y aunque su utilidad básica (y como su nombre lo indica) es la de copiar archivos que ya están en el servidor mismo, funciona perfecta para simplemente copiar desde una ubicación local a una en el server. Los parámetros obligatorios son:


copy(archivo, destino);


En este caso el archivo de inicio es simplemente el campo que tomamos del formulario ($archivo) pero hay una particularidad en el de destino:
no es simplemente $archivo tambien, sino "$archivo_name". Esta pequeña cadena que agregamos a la variable permite que el Upload se realice correctamente ya que de lo contrario el archivo no subiría con su nombre sino que buscaría unas configuraciones existentes en el php.ini, archivo que generalmente no podemos controlar. Adicionalmente, el destino no está limitado y puede ser un directorio distinto de donde se encuentra upload.php simplemente agregando la ruta:

copy($archivo, "/ruta/del/directorio/". $archivo_name);


Solo basta aclarar que en máquinas Windows esto se realiza sin problemas y los directorios no necesitan permisos especiales en condiciones normales, pero en Unix/Linux se recomienda dar permisos CHMOD 777 al directorio en donde se realizará el Upload.

 
Hits
DOCUMENTOS RELACIONDOS
2435
Abrir un fichero HTML y copiar el contenido a TXT.
10961
Coger el valor seleccionado en un SELECT.
1292
¿Cómo ver si una web se verá bien en una resolución menor a la de mi pc sin cambiar la configuración?.
1059
Marquesina siguiendo el cursor.
819
Propósito de este documento (varios años después).
2460
Mensaje mientras se carga la página.
1107
Banear IPs de visitantes no deseados de nuestras páginas (con archivo de texto).
6421
Cómo hacer un buscador en tu web.
963
Filtros en IE5 (rev.1).
7700
Convertir a números romanos.
937
Recordatorio del número de visitas.
4388
Efecto de Zoom en una imágen.
1596
¿Cuanto falta para que termine el dia?.
2421
Convertir direcciones de email en imágenes para engañar a los robots de SPAM.
1431
Cambiar un Enter por un BR (nl2br).
984
Listar el contenido de un directorio con FSO.
3714
Simple contador de descargas sin MySQL.
4818
Validar el texto escrito por el usuario, al instante.
1200
Eliminar el Cache.
1970
Haciendo PING desde PHP.


www.nociondigital.com - Todo para un mundo digital. Páginas Webs, Buscadores y Webmasters....