Enviando archivos al servidor con HTML y PHP
1. Creamos el formulario que servirá para seleccionar el archivo que se desea enviar.
<form action="archivos.php" method="post" enctype="multipart/form-data">
Enviar archivo: <input type="file" name="miarchivo">
<input type="submit" value="Enviar">
</form>
Note el atributo enctype del elemento form, este es necesario para el envío de archivos, también el método a usar debe ser el post. El elemento File permite seleccionar un archivo mediante un cuadro de diálogo.
obtenemos algo como lo siguiente: 2. Creamos el script que recibe el archivo.
<?php
if ( isset( $_FILES['miarchivo'] ) )
{
print "name: { $_FILES['miarchivo']['name']}";
print "size: {$_FILES['miarchivo']['size'] } bytes";
print "temp name: {$_FILES['miarchivo']['tmp_name'] }";
print "type: { $_FILES['miarchivo']['type'] }";
print "error: { $_FILES['miarchivo']['error'] }";
$source = $_FILES['miarchivo']['tmp_name'];
$target = "upload/".$_FILES['miarchivo']['name'];
move_uploaded_file( $source, $target );
}
?>
EL arreglo $_FILES contiene toda la información sobre el archivo que se recibió en el servidor. Luego para almacenar el archivo utilizamos la función move_uploaded_file( ). En nuestro ejemplo el archivo se almacena en la carpeta upload y con el mismo nombre con el que fue recibido.
Es importante tener en cuenta la conveniencia de verificar el tamaño máximo permitido para el archivo. También es importante verificar el tipo de archivo para recibir sólo aquellos que nos interesen y así evitar problemas de seguridad.
No hay comentarios:
Publicar un comentario