Muchas veces necesitamos hacer uploads de archivos en nuestros proyectos para muchos es algo sencillo pero para los que recién empiezan les explicare como se realiza el proceso. Este upload lo haremos utilizando php.
El primer paso es crear un formulario en el cual se seleccione el archivo a subir, para ello utilizaremos el tag input del tipo file, además hay que tener en cuenta que hay que seleccionar el tipo de encoding para el formulario el cual es: multipart/form-data.
HTML:
Luego en la página upload.php que es que se encarga de recibir los datos del formulario (Lo definimos en la propiedad action del formulario). El archivo seleccionado es subido temporalmente a una carpeta, entonces tenemos que copiar el archivo a la carpeta final, en caso contrario este archivo se eliminará automáticamente.
Para acceder a las propiedades del archivo php nos brinda el array $_FILES con las siguientes propiedades, en donde archivo es el nombre del campo con el cual se envió el archivo desde el formulario:
- $_FILES['archivo']['size']: tamaño en bytes del archivo recibido
- $_FILES['archivo']['type']: tipo mime del archivo, por ejemplo image/gif
- $_FILES['archivo']['name']: nombre original del archivo
- $_FILES['archivo']['tmp_name']: nombre del archivo temporal que se utiliza para almacenar en el servidor el archivo recibido
Algo que hago siempre es anteponer 6 caracteres aleatorios antes del nombre del archivo, esto para evitar duplicidad de nombres de los archivos.
PHP:
-
$status = "";
-
if ($_POST["action"] == "upload") {
-
// obtenemos los datos del archivo
-
$tamano = $_FILES["archivo"]['size'];
-
$tipo = $_FILES["archivo"]['type'];
$archivo = $_FILES["archivo"]['name'];
-
-
if ($archivo != "") {
-
// guardamos el archivo a la carpeta files
-
$destino = "files/".$prefijo."_".$archivo;
-
-
$status= "Archivo subido: <b>".$archivo."</b>";
-
}else {
-
$status= "Error al subir el archivo";
-
}
} else {
-
$status = "Error al subir archivo";
}
-
}
Todos los archivos se copiarán a la carpeta /files por que así lo definimos a la hora de copiar el archivo. Hay que tener en cuenta que la carpeta a donde se copiarán los archivos deben tener permisos de escritura en caso contrario se devolverá un error.
Ahora si tienes un hosting deberás cambiar los permisos, esto se hace comúnmente con un cliente de FTP que utilizas para subir tus archivos al hosting. Por ejemplo yo utilizo el FlashFXP como cliente de FTP y hay una opción llamada Atributes (CHMOD) para cambiar los permisos como se muestra en la siguiente imagen.
En nuestro ejemplo no hemos utilizado las propiedades size y type, pero ustedes la pueden usar para restringir a un máximo de tamaño de archivo o restringir a cierto tipo de archivos por ejemplo solo permitir subir imágenes. Para finalizar, hemos agregado estilos a nuestra página creada y además hemos listado los archivos subidos a la carpeta files. Pueden ver el resultado final del ejemplo además de ellos les dejo los archivo fuente para que lo descarguen.
toy cansada de q nada sirve de estas explicaciones... voy a hacer el ultimo intento contigo!!!!
ResponderEliminarjajajajajajajajaja
Eliminaramiga puedes usar una libreria que tiene todas las funciones que desees, el nombre de clase es Upload:
link:- http://www.verot.net/php_class_upload.htm
ahi tiene documentacion yes muy facil. y Funiona :)
jajajajajajajajaja
ResponderEliminaramiga puedes usar una libreria que tiene todas las funciones que desees, el nombre de clase es Upload:
link:- http://www.verot.net/php_class_upload.htm
ahi tiene documentacion yes muy facil. y Funiona :)