Ver Mensaje Individual
  #5 (permalink)  
Antiguo 21/01/2009, 18:16
easy
 
Fecha de Ingreso: diciembre-2008
Mensajes: 454
Antigüedad: 15 años, 4 meses
Puntos: 2
Respuesta: Ayuda con suir archivos al servidor

Bien ya lo tengo, la verdad es que a veces uno pide ayuda pero no es sino pensar un poco. Ultimamente aqui no ayudan, no debemos perder esa filosofia de ayuda, de eso se trata este foro de ayudarnos mutuamente.
en fin, aqui va el codigo por si a alguien le interesa:
Código HTML:
<form action="upload.php" method="post" enctype="multipart/form-data">
Selecciona el archivo a subir:<input type="file" name="archivo_a_subir" id="file"> <br>
<button>Upload File</button></form> 
Código PHP:
//Configuramos primero la subida
define("MAX_TAM",524288); //El tamaño máximo, en bytes del archivo (0.5 MB)
define("RUTA_ARCHIVO","./archivos_subidos");
$ext_permitidas=array('.jpg','.gif','.doc','.xls','.pdf','.docx','.odt','.ppt','.pps','.zip','.ods'); /*Éstas serán las extensiones permitidas */
$archivo=$_FILES['archivo_a_subir']['name'];//Obtenemos los datos del archivo
$extension=substr($archivo,strpos($archivo,'.'),strlen($archivo)-1); /*Obtenemos la
extensión del archivo*/
/*Ahora comprobaremos si el archivo subido tiene alguna de las extensiones
permitidas, si no, terminamos*/
if(!in_array($extension,$ext_permitidas)){
die(
"El archivo tiene una extensi&oacute;n no permitida: $extension");}
//Ahora comprobamos el tamaño del archivo, si es demasiado grande, terminamos
$tam=filesize($_FILES['archivo_a_subir']['tmp_name']); /*Obtenemos el tamaño del
archivo */
if($tam>MAX_TAM){ //Lo comparamos
die("El archivo es demasiado grande: $tam");}
/*Ahora ya sólo falta almacenar el archivo en una carpeta en nuestro servidor:
./archivos_subidos */
//Primero comprobamos si el directorio tiene permisos 777 para almacenar el archivo
if(!is_writable(RUTA_ARCHIVO)){
die(
"No se puede almacenar el archivo en el servidor. Por favor,
int&eacute;ntelo m&aacute;s tarde o contacte con el administrador."
);
}
//Si el directorio tiene 777, almacenamos el archivo ahí
if(move_uploaded_file($_FILES['archivo_a_subir']['tmp_name'],RUTA_ARCHIVO "/".
$archivo)){
echo 
"El archivo ha sido correctamente almacenado."/*Todo correctamente
hecho.*/
exit;
}else
{
echo 
"Ha habido un error al subir el archivo, por favor, int&eacute;ntelo
m&aacute;s tarde."
//Ha sucedido un inesperado error
exit; //Salimos

y para ver el archivo o descargarlo
Código PHP:
//definimos el path de acceso
$path "archivos_subidos/";

//abrimos el directorio
$dir opendir($path);

//Mostramos las informaciones
while ($elemento readdir($dir))

if (
$elemento == '.' || $elemento =='..') {
} else {
 echo 
"<a href=" .$path"" .$elemento">" .$elemento"<br></a>"
}
}
//Cerramos el directorio
closedir($dir); 
Muxcha suerte a todos y gracias