Foros del Web » Programando para Internet » PHP »

Aporte: Aplicacion de centro de descargas. parte 1

Estas en el tema de Aporte: Aplicacion de centro de descargas. parte 1 en el foro de PHP en Foros del Web. Hola es extraño el problema, compruena en la bbdd con phpMyAdmin, que el campo de la base size , donde se almacena el tamaño del ...

  #31 (permalink)  
Antiguo 15/11/2008, 15:07
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 1 mes
Puntos: 52
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

Hola

es extraño el problema, compruena en la bbdd con phpMyAdmin, que el campo de la base size, donde se almacena el tamaño del archivo, que en realidad haya solo 1kb, para ver donde esta el problema, al subir o al bajar el archivo.

Un saludo

P.D. y si pones el codigo para subir archivos, y el de descargarlos, para ver como te quedaron y ver si hay algun error.

Un saludo
  #32 (permalink)  
Antiguo 10/12/2008, 19:33
 
Fecha de Ingreso: junio-2006
Mensajes: 10
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

La aplicación esta de lujo, e intentado ver como podría poner el tamaño del archivo en Kilobytes, y no en bytes como viene por default, la verdad es que no se donde hacerlo, se que se tiene que dividir el tamaño total del archivo entre 1024, lo que nose es si seria antes de enviarlo a la base de datos, o al momento de hacer la consulta y mostrarlo en la pagina de listar_archivos.php. Claro lo ideal seria al momento de mostrarlos, puesto que así yo podría seleccionar en que unidad mostrar el tamaño de cada archivo.

Alguno de los genios en PHP y MySQL del foro podria darme alguna pista, he buscado en el foro pero no encontrado nada.

Muchísimas gracias!!.
  #33 (permalink)  
Antiguo 10/12/2008, 22:17
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

Lee los comentarios publicados en http://www.php.net/filesize

  #34 (permalink)  
Antiguo 18/12/2008, 23:28
 
Fecha de Ingreso: diciembre-2008
Mensajes: 21
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

como puedo hacer que solo tengan acceso a esta seccion lso usuariso registrados en mi foro smf?
  #35 (permalink)  
Antiguo 07/03/2009, 16:36
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 421
Antigüedad: 15 años, 4 meses
Puntos: 0
No existe un link donde se pueda descargar toda la aplicacion

Al autor por favor me podria decir como solucionar
Código php:
Ver original
  1. if (isset($_POST['submit'])) {  
  2.     if(is_uploaded_file($_FILES['fichero']['tmp_name'])) {
  3.    
  4.    
  5.       // me verifica haya sido cargado el archivo
  6.         $ruta_destino = "C:/xampp/htdocs/repasos/descargas9/archivos";
  7.         $namefinal= trim ($_FILES['fichero']['name']); //linea nueva devuelve la cadena sin espacios al principio o al final
  8.         $namefinal= ereg_replace (" ", "", $namefinal);// linea nueva devuelve la cadena sin espacios entre palabtas
  9.         $uploadfile= $ruta_destino . $namefinal;
Es ahi donde deberia guarda mis archivos subidos no? pero lo guarda un escalafon antes no se poq pero sube la imagen y introduce a la base de dato

Ahora cuando quiero descargar me vota esto

No existe archivos/pesadilla-1024x768.jpg

como soluciono

Ya lo solucione gracias por el aporte es de gran ayuda

Es una excelente aporte pero quiria preguntar como se podria implementar secciones de modificar y eliminar

Última edición por GatorV; 18/03/2009 a las 16:29
  #36 (permalink)  
Antiguo 07/06/2009, 12:19
 
Fecha de Ingreso: octubre-2008
Ubicación: Mexico
Mensajes: 78
Antigüedad: 15 años, 6 meses
Puntos: 1
Respuesta: Aporte: Aplicacion de centro de descargas. parte 3

Amigo todo me sale bien pero cuando quiero descargar lo que subi me dice que la ruta no se encontro si me podrian ayudar a resolver este problema gracias

Última edición por GatorV; 07/06/2009 a las 12:35
  #37 (permalink)  
Antiguo 09/06/2009, 11:50
 
Fecha de Ingreso: marzo-2009
Mensajes: 63
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

hola que tal .. perdon pero noouedo cambiar los permisos de la carpeta .. tengo xp home... otra cosa en la funcion mysql_select_db('registro') ¿que no el nombre de la bd es descargas? ademas el parametro registro se repite en otras funciones... no entiendo les agradesc o me puedan explicar

gracias...
  #38 (permalink)  
Antiguo 11/06/2009, 09:10
 
Fecha de Ingreso: marzo-2009
Mensajes: 63
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

problema solucionado desde antier gracias....
  #39 (permalink)  
Antiguo 03/09/2009, 14:55
 
Fecha de Ingreso: agosto-2009
Mensajes: 3
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

Cita:
Iniciado por jaronu Ver Mensaje
mira que existan los directorios y que tengas permisos 777 en las carpetas
A mi me aparece el mismito error como le hicieron,

Warning: move_uploaded_file(/public_html/upload/reporte_de_credito.pdf) [function.move-uploaded-file]: failed to open stream: No such file or directory in /home/brani/public_html/PRUEBAS/subir.php on line 15

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/php4NK4xV' to '/public_html/upload/reporte_de_credito.pdf' in /home/brani/public_html/PRUEBAS/subir.php on line 15


Tengo creada las carpetas public_html/upload/ donde quiero que se guarden los archivos y estan con permisos 777.

Y me marca ese error, echenme la mano nadi me puede decir que es
  #40 (permalink)  
Antiguo 04/10/2009, 16:33
 
Fecha de Ingreso: octubre-2009
Mensajes: 3
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

Excelente!!!!! funciono de maravilla, me has ayudado mucho

Saludos.
  #41 (permalink)  
Antiguo 06/10/2009, 09:47
 
Fecha de Ingreso: junio-2009
Mensajes: 145
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

primero q nada muy chevere el aporte, y tnego una duda tiene q mostrar la imagen o solo el nombre y tamaño en la parte de listar_archivos y 2° en la parte de descarga me sale lo siguinete

No existe archivos/chivas.jpg

aunque si sale bien el de subir el archivo ya q me coloca la imagen en el directorio que cree le pongo el codigo por si me falto algo por colocar

// me verifica haya sido cargado el archivo
$ruta_destino = "../Imagenes/";
$namefinal= trim ($_FILES['fichero']['name']); //linea nueva devuelve la cadena sin espacios al principio o al final
$namefinal= ereg_replace (" ", "", $namefinal);// linea nueva devuelve la cadena sin espacios entre palabtas
$uploadfile= $ruta_destino . $namefinal;
bueno esp q me puedas ayudar
  #42 (permalink)  
Antiguo 07/01/2010, 17:31
 
Fecha de Ingreso: enero-2010
Mensajes: 1
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

hola mira todo funciona bien , sube el archivo a su carpeta, muestra el mensaje que lo subio :O i se guardan los campos en la base de datos pero me da este error:

Parse error: syntax error, unexpected '*' in C:\AppServ\www\CECADE\admin\paginator.inc.php on line 3

cuando los quiero ver, espero su ayuda :D
  #43 (permalink)  
Antiguo 24/04/2010, 19:49
 
Fecha de Ingreso: febrero-2002
Mensajes: 49
Antigüedad: 22 años, 2 meses
Puntos: 0
Respuesta: Aporte:Subir archivos al server, guardar ruta en la BBDD y descargarlos.

Cita:
Iniciado por jaronu Ver Mensaje
Hola, presento una aplicación optenida de varios scripts de la red, adaptados por mi, Javier Rojas, y con la colaboración de GatorV del foro de php de www.forosdelweb.com, sin su ayuda no hubiera solucionado los problemas que me surgian en la aplicación, Tambien mis agradecimientos a Carlojas, que tambien colaboro con su sabiduria, Y a Okram que puso la guinda final para forzar la descarga de los archivos.

La aplicación consiste en varios scripts, los cuales te permiten:
· Cargar archivos a un directorio de tu web
· Guardar la ruta al directorio y la información que desees del archivo, en una Base de datos, en este caso MySQL
· Listar el contenido de archivos paginados en funcion del numero de resultados
· Y el ultimo script que permite la descarga del archivo.


Empezamos por configurar la tabla de la base de datos, archivo descargas.sql

Descargas.sql

CREATE TABLE `archivos` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(120) NOT NULL,
`description` varchar(250) NOT NULL,
`ruta` varchar(100) NOT NULL,
`tipo` varchar(50) NOT NULL,
`size` int(50) NOT NULL,
PRIMARY KEY (`id`)


Ahora el codigo que procesa la carga de archivos a una carpeta que ya hemos creado en el hosting o en local, con su formulario.



Código PHP:
<?php 
//guardar como subir_archivos.php
//Aplicacion por Javier Rojas de www.tuboolar-web.com con la inestimable ayuda de  GatorV

if (isset($_POST['submit'])) {  
    if(
is_uploaded_file($_FILES['fichero']['tmp_name'])) {
    
    
      
// me verifica haya sido cargado el archivo 
        
$ruta_destino "../cevit/archivos/";
        
$namefinaltrim ($_FILES['fichero']['name']); //linea nueva devuelve la cadena sin espacios al principio o al final
        
$namefinalereg_replace (" """$namefinal);// linea nueva devuelve la cadena sin espacios entre palabtas
        
$uploadfile$ruta_destino $namefinal



        if(
move_uploaded_file($_FILES['fichero']['tmp_name'], $uploadfile)) { // se coloca en su lugar final 
                   
                    
echo "<b>Upload exitoso!. Datos:</b><br>"
                    echo 
"Nombre: <i><a href=\"".$ruta_destino $_FILES['fichero']['name']."\">".$_FILES['fichero']['name']."</a></i><br>"
                    echo 
"Tipo MIME: <i>".$_FILES['fichero']['type']."</i><br>"
                    echo 
"Peso: <i>".$_FILES['fichero']['size']." bytes</i><br>"
                    echo 
"<br><hr><br>"
                        


//conectamos a la base de datos para almacenar los datos y la ruta del archivo

                 
mysql_connect('localhost','Tu_user','Tu_password')or die ('Ha fallado la conexión: '.mysql_error());
                 
mysql_select_db('registro')or die ('Error al seleccionar la Base de Datos: '.mysql_error());


 
 
 
                   
$nombre_archivo  $_POST["nombre_archivo"];
                   
$description  $_POST["description"];


                   
$query "INSERT INTO archivos 
    VALUES (0,'$nombre_archivo','$description' , '"
.$_FILES['fichero']['name']."','".$_FILES['fichero']['type']."', '".$_FILES['fichero']         ['size']."')";

       
mysql_query($query) or die(mysql_error());
       echo 
"El archivo '".$nombre_archivo."' ha sido registrado de manera satisfactoria.<br />";
                
    


                     
        } 
    } 
 }
          
// A continuación el formulario 

?>
<body>
<form action="<?php echo $_SERVER['PHP_SELF'?>" method="post" enctype="multipart/form-data"> 
    Archivo: <input name="fichero" type="file" size="150" maxlength="150"> 
    <br> Nombre: <input name="nombre_archivo" type="text" size="70" maxlength="70">
    <br> Descripcion: <input name="description" type="text" size="100" maxlength="250">
    <br>
  <input name="submit" type="submit" value="Upload!">  
</form> 
</body>
Jaronu, he aprobechado muy bien tu contribución y por eso te doy las gracias, descubrí que al subir un archivo, si hago F5 la aplicación vuelve a grabar los datos en la base, le estube dando vueltas pero no encontré la solución.
Tendrías alguna idea de como solucionar esto?
Mil gracias
__________________
Sebcun
  #44 (permalink)  
Antiguo 10/05/2010, 09:37
 
Fecha de Ingreso: marzo-2010
Ubicación: Córdoba, España
Mensajes: 6
Antigüedad: 14 años
Puntos: 0
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

Muchisimas gracias por el aporte!!!
  #45 (permalink)  
Antiguo 16/06/2010, 19:11
Avatar de Vergara  
Fecha de Ingreso: junio-2010
Ubicación: San Francisco California
Mensajes: 249
Antigüedad: 13 años, 10 meses
Puntos: 6
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

Cita:
Iniciado por jaronu Ver Mensaje
cual es la linea 8??
le falto ponerle: ) al final



asi esta:
Cita:
CREATE TABLE `archivos` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(120) NOT NULL,
`description` varchar(250) NOT NULL,
`ruta` varchar(100) NOT NULL,
`tipo` varchar(50) NOT NULL,
`size` int(50) NOT NULL,
PRIMARY KEY (`id`)
y deveria estar asi:
Cita:
CREATE TABLE `archivos` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(120) NOT NULL,
`description` varchar(250) NOT NULL,
`ruta` varchar(100) NOT NULL,
`tipo` varchar(50) NOT NULL,
`size` int(50) NOT NULL,
PRIMARY KEY (`id`)
)

por eso le marca error al espaider boy a copiar y pegar...
  #46 (permalink)  
Antiguo 16/09/2010, 05:48
 
Fecha de Ingreso: marzo-2010
Ubicación: Córdoba, España
Mensajes: 6
Antigüedad: 14 años
Puntos: 0
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

Maravilloso el aporte, pero cómo se puden eliminar los archivos una vez se han subidos.
Gracias
  #47 (permalink)  
Antiguo 06/10/2010, 01:43
 
Fecha de Ingreso: octubre-2010
Mensajes: 9
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: Aporte: Aplicacion de centro de descargas. parte 5 ultima

Cita:
Iniciado por jaronu Ver Mensaje
Y ahora el archivo que procesa la desgarga del archivo llamalo descargar.php

Código PHP:
<?php $ruta $_GET['ruta'];
$archivo_arr explode"/"$ruta );
$archivo $archivo_arr[count($archivo_arr) - 1];

if( !
file_exists$ruta ) ) {
         die( 
"No existe $ruta" );
}

header"Content-Disposition: attachment; filename=".$archivo."");
header"Content-type: application/octet-stream" ); 
header("Content-Length: ".filesize($ruta)); //header que envia al navegador el tamaño del archivo.

@readfile$ruta );  
?>
Y con esto creo que ya esta. Espero que os funcione a mi me va muy bien.
Un Saludo a todos.
Hola no consigo que me funcione esta parte, me dice siempre que no existe y el nombre de la ruta.
Mi ruta es esta.
$ruta_destino = "D:/wamp/www/host/gallery/"; [En el index.php]

Saludos
  #48 (permalink)  
Antiguo 21/11/2010, 23:54
 
Fecha de Ingreso: noviembre-2010
Mensajes: 1
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

compadre hay le falta cerrar el parentesis que se abre arriba en la primera sentenciaa

a lo ultimo debes cerrar con un parentesis ) y listoo ...!!

el mio me funciona de peloss graxx salu2 Xd..!!
  #49 (permalink)  
Antiguo 22/11/2010, 00:04
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 14 años, 11 meses
Puntos: 322
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

Muy buen aporte!
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #50 (permalink)  
Antiguo 22/02/2011, 11:09
Avatar de eriksoft  
Fecha de Ingreso: septiembre-2009
Ubicación: Peru
Mensajes: 9
Antigüedad: 14 años, 7 meses
Puntos: 1
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

muy buen aporte ahora lo voy a implementar todo completo como un gestor de archivos y lo subire a un host para que sea de ayuda para todos

saludos
  #51 (permalink)  
Antiguo 30/06/2011, 11:40
 
Fecha de Ingreso: junio-2011
Mensajes: 1
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

hola amigo me aparece este error al intentar probarlo

Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\Servidor\Apache\htdocs\paginator.inc.php on line 94

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\Servidor\Apache\htdocs\paginator.inc.php on line 94
Error en la consulta de conteo de registros: 20. Mysql dijo: Access denied for user 'ODBC'@'localhost' (using password: NO)

como hago
  #52 (permalink)  
Antiguo 09/01/2013, 14:35
 
Fecha de Ingreso: julio-2012
Mensajes: 3
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

Hola.

Perdon por abrir este tema, pero me gustaría que publicaran el resultado, ya que yo tengo un problema y no se como resolverlo.

Hasta pronto.
  #53 (permalink)  
Antiguo 09/01/2013, 14:38
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Aporte: Aplicacion de centro de descargas. parte 1

Cita:
Iniciado por evan_0412 Ver Mensaje
Hola.

Perdon por abrir este tema, pero me gustaría que publicaran el resultado, ya que yo tengo un problema y no se como resolverlo.

Hasta pronto.
Abre tu propio tema explicando el problema y colocando el código para que alguién te pueda ayudar.

Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #54 (permalink)  
Antiguo 07/10/2015, 10:37
 
Fecha de Ingreso: octubre-2015
Ubicación: Argentina salta
Mensajes: 2
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: Aporte: Aplicacion de centro de descargas. parte 5 ultima

Cita:
Iniciado por jaronu Ver Mensaje
Y ahora el archivo que procesa la desgarga del archivo llamalo descargar.php

Código PHP:
<?php $ruta $_GET['ruta'];
$archivo_arr explode"/"$ruta );
$archivo $archivo_arr[count($archivo_arr) - 1];

if( !
file_exists$ruta ) ) {
         die( 
"No existe $ruta" );
}

header"Content-Disposition: attachment; filename=".$archivo."");
header"Content-type: application/octet-stream" ); 
header("Content-Length: ".filesize($ruta)); //header que envia al navegador el tamaño del archivo.

@readfile$ruta );  
?>
Y con esto creo que ya esta. Espero que os funcione a mi me va muy bien.
Un Saludo a todos.
Y visitar [URL="http://www.tuboolar-web.com"]http://www.tuboolar-web.com[/URL]

NOTA. Para subir archivos grandes has de cambiar algunos parámetros de tu php.ini
Si trabajas en local y si no habras de ponerte en contacto con tu hosting para que te lo cambien ellos.
Estos son los parámetros a cambiar:

file_uploads = On // en On

max_execution_time = 500 // los segundos que consideren

max_input_time = 500// los segundos que consideren

memory_limit = 50M // por lo regular el mismo tamaño del archivo a subir o quizas mas

upload_tmp_dir = /xyz // su directorio temporal con permisos de R/W

post_max_size = 50M // el tamaño maximo de su archivo a subir

upload_max_filesize = 50M // el tamaño maximo de su archivo a subir
Me tira ese error en el archivo descargar.php
Código PHP:
NoticeUndefined indexruta in D:LeoXampphtdocssubir o descargarsistemadescargar.php on line 2
No existe 
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 9 personas




La zona horaria es GMT -6. Ahora son las 05:31.