Foros del Web » Programando para Internet » PHP »

Crear disco duro virtual

Estas en el tema de Crear disco duro virtual en el foro de PHP en Foros del Web. Que tal, bueno, pues ese es mi problema. Tengo un proyecto en la escuela de una intranet y quieren tener el servicio de un disco ...
  #1 (permalink)  
Antiguo 24/08/2005, 22:58
Avatar de Gerardoaguirre  
Fecha de Ingreso: junio-2004
Mensajes: 68
Antigüedad: 19 años, 9 meses
Puntos: 0
Crear disco duro virtual

Que tal, bueno, pues ese es mi problema.

Tengo un proyecto en la escuela de una intranet y quieren tener el servicio de un disco duro virutal, obviamente poniendole tamaño limitado a cada usuario por carpeta.

He visto que dicen que con Quotas se puede hacer, pero sinceramente no entiendo nada, espero que me puedan ayudar.

Un usuario de este foro hizo algo asi, pero no me ha contestado y sinceramente ya necesito alguna ayuda.

esta es la web:

http://www.miquelgomis.com/vd/

Les agradezco cualquier ayuda!

Gerardo Aguirre
__________________
Entre mas nos ayudemos, mas aprenderemos!!
  #2 (permalink)  
Antiguo 24/08/2005, 23:04
Avatar de Takitei  
Fecha de Ingreso: septiembre-2004
Ubicación: Venezuela
Mensajes: 1.231
Antigüedad: 19 años, 6 meses
Puntos: 5
Um, esto es interesante. Me he suscrito al tema.
__________________
Takitei
Ingeniarte.com
DannyHerran.com
"Dadme un punto de apoyo y moveré la tierra" - Arquímedes.
  #3 (permalink)  
Antiguo 24/08/2005, 23:11
 
Fecha de Ingreso: julio-2005
Mensajes: 32
Antigüedad: 18 años, 8 meses
Puntos: 0
me interesa a mi tb... quien sabe algo.. en esta web he encontrado casi todo lo que busco ^^
  #4 (permalink)  
Antiguo 25/08/2005, 00:14
Avatar de DvD AdN  
Fecha de Ingreso: mayo-2005
Ubicación: Frente al monitor
Mensajes: 610
Antigüedad: 18 años, 10 meses
Puntos: 0
Un disco duro virtual....., no podría ser un upload de archivos, con una carpeta de tamaño limitado para cada usuario??
__________________
Keep f***ing learning
Ask for f***ing help.
Use f***ing spell check.
Think about all the f***ing possibilities.
  #5 (permalink)  
Antiguo 25/08/2005, 00:39
 
Fecha de Ingreso: julio-2005
Mensajes: 32
Antigüedad: 18 años, 8 meses
Puntos: 0
jajajaja eso es poh xD
  #6 (permalink)  
Antiguo 25/08/2005, 08:56
Avatar de Gerardoaguirre  
Fecha de Ingreso: junio-2004
Mensajes: 68
Antigüedad: 19 años, 9 meses
Puntos: 0
Si, de hecho es eso simplemente pero no tengo idea de como ponerle un tamaño limite a una carpeta.

Aparte no se que OS utilizar para la Intranet; Windows, Linux o Unix, que me recomiendan??
__________________
Entre mas nos ayudemos, mas aprenderemos!!
  #7 (permalink)  
Antiguo 25/08/2005, 14:51
Avatar de Gerardoaguirre  
Fecha de Ingreso: junio-2004
Mensajes: 68
Antigüedad: 19 años, 9 meses
Puntos: 0
Porfavor ayudenmeeeeeeeeeeeeeeeeeee!!!!
__________________
Entre mas nos ayudemos, mas aprenderemos!!
  #8 (permalink)  
Antiguo 25/08/2005, 19:43
Avatar de Takitei  
Fecha de Ingreso: septiembre-2004
Ubicación: Venezuela
Mensajes: 1.231
Antigüedad: 19 años, 6 meses
Puntos: 5
Si no sabes nada de Linux, usa Windows. El límite de la carpeta creo que puedes definirlo con un .htaccess pero tendrías que googlear porque no se si estoy en lo correcto.

El upload de archivos ya es un tema avanzado y deberás leer algunas cosas antes de adentrarte en este mundo. En las FAQs de PHP tienes información al respecto.

Saludos,
__________________
Takitei
Ingeniarte.com
DannyHerran.com
"Dadme un punto de apoyo y moveré la tierra" - Arquímedes.
  #9 (permalink)  
Antiguo 25/08/2005, 23:54
Avatar de Gerardoaguirre  
Fecha de Ingreso: junio-2004
Mensajes: 68
Antigüedad: 19 años, 9 meses
Puntos: 0
Bueno, si he manejado Linux, de hecho tengo un servidor para bases de datos y apache.

Lo de los uploads de archivos si lo se tambien, mi unico problema seria como limitar el tamaño de las carpetas e igualmente poner una barra de el porcentaje del disco usado para cada usuario.

Gracias
__________________
Entre mas nos ayudemos, mas aprenderemos!!
  #10 (permalink)  
Antiguo 26/08/2005, 00:37
Avatar de DvD AdN  
Fecha de Ingreso: mayo-2005
Ubicación: Frente al monitor
Mensajes: 610
Antigüedad: 18 años, 10 meses
Puntos: 0
No se si se podría checar el tamaño de las carpetas con disk_total_space(); y dependiendo del tamaño de la carpeta aceptas los archivos o no
o... no se
__________________
Keep f***ing learning
Ask for f***ing help.
Use f***ing spell check.
Think about all the f***ing possibilities.
  #11 (permalink)  
Antiguo 26/08/2005, 07:00
Avatar de aRTeX  
Fecha de Ingreso: mayo-2005
Mensajes: 374
Antigüedad: 18 años, 10 meses
Puntos: 0
Mira yo creo que la mejor forma, es que te busques un script php el cual lea los archivos de un directorio!!, entonces lo tomas y a ese script le modificas, o mejor le obtienes el tamaño. y bueno si eres programador usa la logica!!


pero ese es mi consejo, me entendiste?? o no??
  #12 (permalink)  
Antiguo 26/08/2005, 07:59
 
Fecha de Ingreso: junio-2005
Mensajes: 981
Antigüedad: 18 años, 9 meses
Puntos: 2
Hola que tal?

Mi forma de proceder a esto, es que al momento del upload de un nuevo archivo con readdir() y un bucle leo toda la carpeta y con filesize() obtengo el tamaño de todos los archivos y depende del tamaño obtenido se deja o no subir el archivo. Esta forma de hacerlo no es la mejor pero si la mas simple, por lo menos para que tengas una idea de como hacerlo. Saludos y suerte.
  #13 (permalink)  
Antiguo 26/08/2005, 08:25
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 1 mes
Puntos: 0
ojala les sirva, es basico pero sube los archivos que quieran.
esta limitado a 500 Kb.
Uno de los problemas es que algunos archivos los abre y no los baja (si laguien sube como hacerlo coll).


trans.htm
Código HTML:
<html>
<head>
<title>Transferencia de archivos</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="estilo.css" rel="stylesheet" type="text/css">
</head>

<body bgcolor="#F1F3F5">
<table align="center">
    <tr>
      <td height="100"> 
        <FORM ENCTYPE="multipart/form-data" action="script.php" METHOD="post"> 

<!-- # con este input "oculto" establecemos el limite máximo
# del tamaño del fichero a transferir. En este ejemplo 500 Kbytes-->
<INPUT type="hidden" name="lim_tamano" value="500000"> 

        <p><span class="td">Archivo a transferir</span><br> 

      <INPUT name="archivo" type="file" class="t_n">
    </p> 

        <p align="center"> 
          <INPUT name="enviar" type="submit" class="t_n" value="Aceptar">
      </FORM></td></tr></table>
</body>
</html> 
script.php

Código PHP:
<? session_start(); ?>
<html>
<head>
<title>Transferencia de archivo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="estilo.css" rel="stylesheet" type="text/css">
</head>
<body  class="t_b">
<?php
$nombre 
$_FILES["archivo"]["name"];
$temporal $_FILES["archivo"]["tmp_name"];
$size $_FILES["archivo"]["size"];
$lim_tamano "500000"#500k maximo
$folder "files/"#cambia el nombre de la carpeta aqui
if ($size<=$lim_tamano){

if(!
move_uploaded_file($temporal,$folder.$nombre))  {
     echo 
"<div align='center' class='titulo'>No ha podido transferirse el archivo $archivo_name</div>";
     echo 
"<div align='center'>su tamaño no puede exceder de $lim_tamano bytes</div>";
     echo 
"<p></p>";
     echo 
"<p></p>";
     echo 
"<table align='center'><td><form name='form1' method='post' action='index.php?accion=block'>
                    <input type='button' name='Button' class='t_n' value='Close' onClick='self.close();return false'>

  </form></td></table>"
;    
}
else{
     echo 
"<div align='center' class='titulo'>Se ha transferido el archivo $archivo_name</div>";
     echo 
"<p></p>";
     echo 
"<p></p>";
     echo 
"<table align='center'><td><form name='form1' method='post' action='index.php?accion=block'>
<input type='button' name='Button' class='t_n' value='Close' onClick='self.close();return false'>  </form></td></table>"
;
$ruta "$folder$nombre";


       global 
$idAuth;
       
$hostname "localhost";
       
$database "meuno";
       
$username "root";
       
$password "";
       
$coneccion mysql_pconnect($hostname$username$password) or die(mysql_error());
         
$insertSQL "INSERT INTO files (idUsuario, Ruta, Nombre) VALUES ('$idAuth', '$ruta', '$nombre')";
       
mysql_select_db($database$coneccion);
       
$Result1 mysql_query($insertSQL) or die('ERROR, please contact: <a href="mailto:[email protected]">[email protected]</a>');
    }
    }
?> 
</body>
</html>
mostrar.php

Código PHP:
<? session_start(); ?>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="estilo.css" rel="stylesheet" type="text/css">
</head>

<body class="t_b">
<p class="subtitulo">Descarga de archivos</p>
<?php
if(isset($idAuth)) {
global 
$idAuth;
global 
$idRuta;
    
// you may have to modify login information for your database server:
    
$conexion=mysql_connect("localhost","root","") or die ("no se ha podido conectar a la BD");
    
mysql_select_db("meuno") or die ("no se ha podido seleccionar la BD");
    
$sql "SELECT * FROM files WHERE idUsuario='$idAuth'"//.$idUsuario;
    
$consulta mysql_query($sql,$conexion);
    
/*$datos = mysql_result($consulta,0,"Ruta"); //or die('ERROR, please contact: <a href="mailto:[email protected]">[email protected]</a>');
    $datos2 = mysql_result($consulta,0,"Nombre") or die('ERROR, please contact: <a href="mailto:[email protected]">[email protected]</a>');
    //echo $datos;
    //echo $datos2;*/
    
while($datos mysql_fetch_array($consulta)){
    echo 
"<p><li><a href='".$datos["Ruta"]."' class='t_b'>".$datos["Nombre"]."</a></p>" ;
    }
    
/*echo "<a href='$datos' class='titulo'>$datos2</a>" ;*/
    
}
?> </body>
</html>
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #14 (permalink)  
Antiguo 26/08/2005, 08:42
 
Fecha de Ingreso: junio-2004
Mensajes: 158
Antigüedad: 19 años, 9 meses
Puntos: 1
Gerardoaguirre porque a la tabla de usuarios no le agregas un campo con el tamaño asigando a la carpeta

cuando el usario se loguea generas una sesion donde tenes el usuario y el tamañano de la carpeta
cuando le mostras los que tiene en la carpeta podes decirle el porcentaje usado del total.

luego cada vez que vas a hace un upload controlas que no exeda ese tamaño

creo que seria un buen camino
saludos
Javier

me gustaria ver como te quedo el scrip si puedes
  #15 (permalink)  
Antiguo 26/08/2005, 11:04
Avatar de Takitei  
Fecha de Ingreso: septiembre-2004
Ubicación: Venezuela
Mensajes: 1.231
Antigüedad: 19 años, 6 meses
Puntos: 5
Agrego con jadi, lo mejor es que manejes la quota por BD, asi cada que subas algo nuevo, actualizas el campo ocupado y sabes exactamente cuánto se subio y cuánto tiene libre.
__________________
Takitei
Ingeniarte.com
DannyHerran.com
"Dadme un punto de apoyo y moveré la tierra" - Arquímedes.
  #16 (permalink)  
Antiguo 26/08/2005, 11:12
Avatar de Gerardoaguirre  
Fecha de Ingreso: junio-2004
Mensajes: 68
Antigüedad: 19 años, 9 meses
Puntos: 0
Perfecto, muchisimas gracias a todos, en cuanto lo haya solucionado no tardare en mandarles el script.

Saludos
__________________
Entre mas nos ayudemos, mas aprenderemos!!
  #17 (permalink)  
Antiguo 26/08/2005, 13:00
Avatar de MaBoRaK  
Fecha de Ingreso: abril-2003
Ubicación: La Paz - Bolivia
Mensajes: 2.003
Antigüedad: 20 años, 10 meses
Puntos: 35
loading..........


Creo yo que tardarìa mas en analizar cuanto pesan los archivos de una carpeta, asi que la solcuion estarìa en dar los nombres rutas tamaño y tipo en la base de datos y en la carpeta dejar solo un identificador como el md5 de un archivo (nombre-tipo-tamaño) y a la hora de consultar por el tamaño de archivos subidos solo consultarlo en la base de datos.



connection closed.
__________________

Maborak Technologies
  #18 (permalink)  
Antiguo 27/08/2005, 22:59
 
Fecha de Ingreso: julio-2005
Mensajes: 32
Antigüedad: 18 años, 8 meses
Puntos: 0
Cuando sepas.. lo posteas pliss!
  #19 (permalink)  
Antiguo 28/08/2005, 04:51
 
Fecha de Ingreso: junio-2002
Mensajes: 243
Antigüedad: 21 años, 9 meses
Puntos: 1
Lo de la barra de porcentaje puedes hacerlo con la gd library.

En la q se puede dibujar linias, circulos y cosas así.

Salu2.
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 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 11:25.