Header Ads

Header ADS

Subir Archivos


Para subir archivos a un servidor, lo único que debemos hacer es poner en un formulario un campo de archivo como los siguientes: 
<form action="" method="post" enctype="multipart/form-data">
   <input type="file" name="file" />
   <input type="submit" name="submit" value="Subir imagen" />
</form> 

Al enviar el formulario, el navegador envía automaticamente el archivo del campo a la carpeta temporal del servidor, pero el problema es una vez en esta carpeta cómo moverlo a la carpeta que se nos antoje. 

Y aquí es donde entra en acción PHP y la función move_uploaded_file que moverá el archivo subido de la carpeta temporal a la carpeta que nosotros le digamos e incluso con el nombre que le pongamos. 


<?
$destino = 'uploaded' ;
move_uploaded_file ( $_FILES [ 'file' ][ 'tmp_name' ], $destino . '/' . $_FILES [ 'file' ][ 'name' ]);
?> 

Donde $_FILES['file']['tmp_name'] identificara el archivo temporal subido al servidor, $destino, la carpeta en la que lo queremos mover y $_FILES['file']['name'] el nombre original del archivo. 

Además también podemos conocer otros parámetros del fichero subido como por ejemplo el tamaño, vamos a ver un ejemplo: 


<?
$destino = 'uploaded' ;
// Leemos el tamaño del fichero
$tamano = $_FILES [ 'file' ][ 'size' ];
// Comprovamos el tamaño
if( $tamano < 500 ){
move_uploaded_file ( $_FILES [ 'file' ][ 'tmp_name' ], $destino . '/' . $_FILES [ 'file' ][ 'name' ]);
}
else echo "El tamaño es superior al permitido" ;
?> 

Tambien podemos saber el tipo de archivo subido con la siguiente variable: $_FILES['file']['type']; 

Nota: Para versiones anteriores a la 4.0.1 de PHP, en lugar del vector $_FILES, debemos usar $HTTP_POST_FILES.
Artículo por cortesía de Eloi de San Martín
www.programacionweb.net

No hay comentarios.

Con tecnología de Blogger.