La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Subir Ficheros al Servidor con PHP José Sánchez Galvañ.

Presentaciones similares


Presentación del tema: "Subir Ficheros al Servidor con PHP José Sánchez Galvañ."— Transcripción de la presentación:

1 Subir Ficheros al Servidor con PHP José Sánchez Galvañ

2 Índice Formulario para seleccionar Archivos – Propiedades del formulario. – Código HTML. Página para almacenar el fichero – Propiedades de la página. – Propiedades del fichero de configuración del servidor. – Variables del fichero en el servidor. – Código PHP. – Envío de múltiples ficheros

3 Formulario para seleccionar archivos Creamos una página donde poder seleccionar el fichero a enviar. Formulario sencillo HTML. Capacidad de enviar gran cantidad de información: POST. Llamara a un fichero.php encargado de subir el fichero seleccionado: subirF.php Atributos necesarios para poder enviar esa información.

4 HTML Enviar un nuevo archivo:

5 HTML Enviar un nuevo archivo: subirF.php: Fichero en php encargado de subir el fichero al servidor.

6 HTML Enviar un nuevo archivo: post: Enviaremos el fichero por la entrada estándar.

7 HTML Enviar un nuevo archivo: multipart/form-data:Permite subir datos y archivos en un mismo formulario.

8 HTML Enviar un nuevo archivo: MAX_FILE_SIZE:Palabra reservada: Máximo tamaño del fichero(en bytes). Debería de comprobarlo el servidor.

9 HTML Enviar un nuevo archivo: Referencia del fichero que tendremos en el servidor.

10 HTML Enviar un nuevo archivo: file:Seleccionar el fichero.

11 Página para almacenar el fichero Una vez en el servidor, el fichero se almacena en un directorio temporal, a la espera de la aceptación o no del fichero. Si no se almacena, el fichero se elimina tras la ejecución de la página. Página donde: – Comprobaremos que el fichero cumple los requisitos. – Realizamos la copia del fichero en un directorio del servidor. Formulario en PHP: subirF.php

12 Propiedades del fichero de configuración del servidor. Fichero php.ini: – Permitir subir ficheros al servidor file_uploads = On – Seleccionamos un directorio temporal para los archivos upload_tmp_dir: carp_temp/ – Tamaño máximo de los archivos. upload_max_filesize = 2M

13 Variables de fichero en el servidor $_FILES: variable que contiene la información del fichero: – $HTTP_POST_FILES[nFichero][name]: Nombre original del fichero en el cliente. – $HTTP_POST_FILES[nFichero][tmp_name]: Nombre del fichero temporal en el servidor. – $HTTP_POST_FILES[nFichero][type]: Tamaño en bytes del fichero. – $HTTP_POST_FILES[nFichero][error]: Error asociado al fichero.

14 PHP <? //Información del Archivo $nombre_archivo = $HTTP_POST_FILES['nFichero']['name']; $tamano_archivo = $HTTP_POST_FILES['nFichero']['size']; $nombre_temporal= $HTTP_POST_FILES['nFichero']['tmp_name']; //compruebo si las características del archivo son las que deseo if ($tamano_archivo < 100000) { echo El tamaño de archivo incorrecto.Tamaño maximo 100 Kb máximo. "; } else { if(move_uploaded_file($nombre_temporal, $nombre_archivo)) echo "El archivo ha sido cargado correctamente."; else echo "Ocurrió algún error al subir el fichero. No pudo guardarse."; } ?> Guardamos en variables la información del archivo: $nombre_archivo: Nombre del fichero original. $tamano_archivo: tamaño del fichero. $nombre_temporal: Nombre(temp) del fichero en el servidor. Guardamos en variables la información del archivo: $nombre_archivo: Nombre del fichero original. $tamano_archivo: tamaño del fichero. $nombre_temporal: Nombre(temp) del fichero en el servidor.

15 PHP <? //Información del Archivo $nombre_archivo = $HTTP_POST_FILES['nFichero']['name']; $tamano_archivo = $HTTP_POST_FILES['nFichero']['size']; $nombre_temporal= $HTTP_POST_FILES['nFichero']['tmp_name']; //compruebo si las características del archivo son las que deseo if ($tamano_archivo < 100000) { echo El tamaño de archivo incorrecto.Tamaño maximo 100 Kb máximo. "; } else { if(move_uploaded_file($nombre_temporal, $nombre_archivo)) echo "El archivo ha sido cargado correctamente."; else echo "Ocurrió algún error al subir el fichero. No pudo guardarse."; } ?> El fichero NO cumple las propiedades. El fichero SI cumple las propiedades. Movemos el fichero de su localización temporal, a una definitiva, asignándole el nombre original que queramos darle.

16 PHP <? //Información del Archivo $nombre_archivo = $HTTP_POST_FILES['nFichero']['name']; $tamano_archivo = $HTTP_POST_FILES['nFichero']['size']; $nombre_temporal= $HTTP_POST_FILES['nFichero']['tmp_name']; //compruebo si las características del archivo son las que deseo if ($tamano_archivo < 100000) { echo El tamaño de archivo incorrecto.Tamaño maximo 100 Kb máximo. "; } else { if(move_uploaded_file($nombre_temporal, $nombre_archivo)) echo "El archivo ha sido cargado correctamente."; else echo "Ocurrió algún error al subir el fichero. No pudo guardarse."; } ?> Mostramos un mensaje de error. Al salir, el fichero se elimina.

17 PHP else { if(move_uploaded_file($nombre_temporal, $nombre_archivo)) echo "El archivo ha sido cargado correctamente."; else echo "Ocurrió algún error al subir el fichero. No pudo guardarse."; } move_uploaded_file: Movemos el fichero a la posición definitiva.Le pasamos el fichero temporal el nombre con el que queremos guardarlo. Podemos indicar una ruta: Move_uploaded_file( $nombre_temporal, $direccion. $nombre_archivo) move_uploaded_file: Movemos el fichero a la posición definitiva.Le pasamos el fichero temporal el nombre con el que queremos guardarlo. Podemos indicar una ruta: Move_uploaded_file( $nombre_temporal, $direccion. $nombre_archivo)

18 Envío de múltiples ficheros A partir de la versión 3.0.10 HTML PHP $HTTP_POST_FILES[nFichero][name][0]; $HTTP_POST_FILES[nFichero][name][1];

19 ...y por ultimo......dudas y preguntas?


Descargar ppt "Subir Ficheros al Servidor con PHP José Sánchez Galvañ."

Presentaciones similares


Anuncios Google