Hola, LibrosWeb, tengo una inquitud, soy nuevo espero hacerme entender con su ayuda.
Necesito realizar una aplicación muy sencilla vía web. Necesito logear al usuario con MySQL y mostrar las carpetas de Windows del servidor, pero vía web.
Por ejemplo:
- usuario: pepito, lista todas las carpetas de la unidad
D:/
- usuario2: pepito2, lista 5 de 10 carpetas de la unidad
D:/
Le agradezco a la persona que me sepa guiar.
Saludos Oliver
Respuestas
Para poder ayudarte necesitamos conocer más información sobre la aplicación que vas a desarrollar: ¿qué lenguaje de programación estás usando? ¿Dónde y cómo guardas la lista de directorios que se muestran a cada usuario? (en tu ejemplo mencionas que el usuario 1 ve 10 carpetas y el usuario 2 solo 5). ¿la aplicación solo debe mostrar el nombre de los directorios o se puede pinchar en ellos para ver su contenido?
A modo de ejemplo, si utilizas PHP y sólo quieres mostrar el nombre de las carpetas, sin poder pinchar en ellas para ver su contenido, el código sería tan sencillo como el siguiente:
$carpeta = new DirectoryIterator('D:\\'); foreach ($carpeta as $archivo) { if ($archivo->isDir() && !$archivo->isDot()) { echo $archivo->getFilename().'<br>'; } }
@javiereguiluz
Hola Javier, disculpa la poca informacion: pero tienes razón.
- No tengo definido el lenguaje, podemos realizarlo en PHP.
- La lista de directorio está en un servidor Windows 2008 unidad D:
- La aplicacion debe mostrar el nombre y pinchar para ver el contenido.
Nota: la idea que los usuario puedan trabajar en aquel directorio. La informacion que existe en el, es restringida.
Agradezco tu ayuda. Saludos
@oliver_im
Como la funcionalidad que indicas es bastante común, mi consejo es que no lo hagas a mano. El motivo es que te vas a pasar un montón de horas para hacer algo que ya existe y es gratis. Además, te vas a dedicar a resolver los mismos problemas de rendimiento y seguridad que otros ya han resuelto antes y cuyo trabajo ha sido publicado como software libre.
Te indico a continuación dos proyectos grauitos y de software libre que hacen lo que estás buscando:
- ownCloud, esta es sin duda la mejor aplicación que existe para hacer lo que quieres. Se parece a Dropbox, pero lo instalas en tu servidor y tu controlas su funcionamiento. Es una aplicación completísima que tiene todo lo que quieres y mucho más.
- Pydio, es parecida a la aplicación anterior, pero con menos funcionalidades y más fácil de configurar y manejar.
@javiereguiluz
OK, Javier revisaré lo que indicas y probaré. La idea que surge es porque el usuairo que abra la carpeta no pueda, copiar, cortar, eliminar, descargar un documento, etc. que sólo pueda leer.
Te estaré comentando.
saludos,
@oliver_im
Hola Javier, tus sugerencias excelentes: los programas muy completos:
lo mio es que al permitir ver mis documentos ej. pdf, xlsx. se puedan abrir sin descargar de la carpeta/programa, osea permita interactuar dentro del sistema. espero me entiendas.
en visual studio 2012 existe una herramienta llamada, listview se configura en un form, ejecutas y puede ver las carpetas ej. d:/. todo lo que hay inclusive pinchas y puedes trabajar. por que los documentos como xlsx, pdf que tengo cumplen politicas de seguridad, macros, secuencias. etc.
por usuario, pueden ver ciertas carpetas en mi caso total 60 carpetas: no todo los usuario pueden ver todo.
ej. cuando un usuario abre un doc, xlsx este se genera una secuencia y debe quedarce guardado en el documento automaticamente. esta pólitica esta creado en el excel. entonces no debe el doc, guardarlo en otra direccion porque si no, no se guardaria la secuencia el siguiente que abre el mismo doc.
espero me entiendas.
ahi el requerimiento es via web. es mi inquitud. es proceso me piden via web.
http:// localhost/sistema ---- algo asi---- y poder trabajar con mis carpetas.
espero me sepas guiar, saludos
@oliver_im