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
<form action=“subirF.php" method="post"
enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE"
value="100000">
<b>Enviar un nuevo archivo: </b>
<input name=“nFichero" type="file">
<input type="submit" value="Enviar">
</form>
5. HTML
<form action=“subirF.php" method="post"
enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE"
value="100000">
<b>Enviar un nuevo archivo: </b>
<input name="nFichero" type="file">
<input type="submit" value="Enviar">
</form>
“subirF.php”: Fichero en php
encargado de subir el fichero al
servidor.
“subirF.php”: Fichero en php
encargado de subir el fichero al
servidor.
6. HTML
<form action=“subirF.php" method="post"
enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE"
value="100000">
<b>Enviar un nuevo archivo: </b>
<input name="nFichero" type="file">
<input type="submit" value="Enviar">
</form>
“post”: Enviaremos el fichero
por la entrada estándar.
“post”: Enviaremos el fichero
por la entrada estándar.
7. HTML
<form action=“subirF.php" method="post"
enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE"
value="100000">
<b>Enviar un nuevo archivo: </b>
<input name="nFichero" type="file">
<input type="submit" value="Enviar">
</form>
“multipart/form-data”:Permite subir datos y
archivos en un mismo formulario.
“multipart/form-data”:Permite subir datos y
archivos en un mismo formulario.
8. HTML
<form action=“subirF.php" method="post"
enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE"
value="100000">
<b>Enviar un nuevo archivo: </b>
<input name="nFichero" type="file">
<input type="submit" value="Enviar">
</form>
“MAX_FILE_SIZE”:Palabra reservada:
Máximo tamaño del fichero(en bytes).
Debería de comprobarlo el servidor.
“MAX_FILE_SIZE”:Palabra reservada:
Máximo tamaño del fichero(en bytes).
Debería de comprobarlo el servidor.
9. HTML
<form action=“subirF.php" method="post"
enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE"
value="100000">
<b>Enviar un nuevo archivo: </b>
<input name=“nFichero" type="file">
<input type="submit" value="Enviar">
</form>
Referencia del fichero que
tendremos en el servidor.
Referencia del fichero que
tendremos en el servidor.
10. HTML
<form action=“subirF.php" method="post"
enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE"
value="100000">
<b>Enviar un nuevo archivo: </b>
<input name=“nFichero" type="file">
<input type="submit" value="Enviar">
</form>
“file”:Seleccionar el fichero.“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 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.
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.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
<input name=“nFichero[]" type="file">
<input name=“nFichero[]" type="file">
PHP
$HTTP_POST_FILES[“nFichero”][name][0];
$HTTP_POST_FILES[“nFichero”][name][1];