Академический Документы
Профессиональный Документы
Культура Документы
Compartir
AnteriorSiguiente Resumen
El lenguaje PHP permite administrar los archivos enviados (subidos) gracias a un formulario HTML. Formulario de envo de archivos Configuracin de PHP para subir archivos Recuperar el archivo con PHP
Es importante que no olvide el atributo ENCTYPE="multipart/form-data" de lo contrario, no tendr ningn efecto. Por otra parte el campo MAX_FILE_SIZE indica el tamao mximo del fichero que puede subir el navegador, pero eso no es suficiente para asegurarse que los archivos subidos no sobrepasarn un determinado tamao teniendo en cuenta que todos los navegadores no toman en cuenta sistemticamente este valor. El valor del tamao mximo del archivo subido es ajustable en el archivo de configuracin php.ini.
de acceso o en el caso de un alojamiento mutualizado), entonces puede verificar la configuracin con la funcin phpinfo():
La salida de este cdigo ser de la forma siguiente: Array ( [nom_du_fichier] => Array ( [name] => MiHermozaImage.jpg [type] => image/jpg [tmp_name] => ruta_completa_del_archivo_subido [error] => 0 [size] => 1000 ) )
En el caso que sigue a continuacin se trata de una imagen JPEG que pesa 1 Mo.
Los campos $_FILES[name], $_FILES[type], $_FILES|error], $_FILES[size] permiten efectuar tests del tipo de archivo, el tamao, el nombre y verificar si ha habido errores.. De este modo, podr tratar los errores de la siguiente manera: <? if ($_FILES['nom_du_fichier']['error']) { switch ($_FILES['nom_du_fichier']['error']){ case 1: // UPLOAD_ERR_INI_SIZE
echo"El archivo sobrepasa el limite autorizado por el servidor(archivo php.ini) !"; break; case 2: // UPLOAD_ERR_FORM_SIZE echo "El archivo sobrepasa el limite autorizado en el formulario HTML !"); break; case 3: // UPLOAD_ERR_PARTIAL echo "El envio del archivo ha sido suspendido durante la transferencia!"; break; case 4: // UPLOAD_ERR_NO_FILE echo "El archivo que ha enviado tiene un tamao nulo !"); break; } } else { // $_FILES['nom_del_archivo']['error'] vale 0 es decir UPLOAD_ERR_OK // lo que significa que no ha habido ningn error } ?> Gracias a la funcin move_uploaded_files() es posible transferir la imagen del directorio temporal a un directorio de destino:
<? if ((isset($_FILES['nom_del_archivo]['archivo'])&&($_FILES['nom_del_archi vo']['error'] == UPLOAD_ERR_OK)) { $ruta_destino = '/var/www/archivos/'; move_uploaded_file($_FILES['nom_del_archivo']['tmp_name'], $ruta_destino.$_FILES ['nom_del_archivo']['name']); } ?>