Establecer directorio

S

Buenas tengo un elemento en el formulario para seleccionar archivos.

<input id="ficheros" type="file">

Quiero que al darle al botón de seleccionar archivos la ventana que me permite seleccionar el fichero me aparezca en un directorio en concreto y no en el que marca por defecto que es el escritorio. ¿Cómo puedo hacer eso?

Merkury

#1 Pues creo que no se puede personalizar.

Nunca me lo he planteado y puedo equivocarme, pero estoy al 99% seguro de que no se puede.

¿Por curiosidad para que necesitas cambiarlo? ¿Tan complicado es que el usuario busque sus propios archivos en su propio ordenador?

#3 Por lo que ha puesto de código yo apostaría por HTML.

1 1 respuesta
eXtreM3

En qué lenguaje?

2 respuestas
radykal

Creo que al hacer click el navegador llama a la API del sistema operativo y le muestra por defecto el último directorio en el que ha estado buscando ficheros desde un cuadro de diálogo anterior, o en su defecto la carpeta raíz del usuario o la de Documentos, no estoy tampoco 100% seguro pero coincido en que no creo que se pueda personalizar.

1 1 respuesta
B

También debes tener en cuenta que no todos los usuarios utilizan el mismo sistema operativo

1
S

Gracias por las respuestas, es cierto que existen diferentes sistemas operativos, que los directorios en cada equipo son diferentes, etc... quizás no tenga sentido lo que pretendía. Estoy haciendo una aplicación con capacidad de restaurar una copia de seguridad y cuando intentaba seleccionar esa copia de seguridad mi intención era que por defecto me saliera en el directorio que necesito.

#3 la aplicación la hago en php apoyándome en codeigniter. La pregunta de este post pienso que sería para HTML ya que de alguna forma debería indicar a la etiqueta <input> que fuera a un directorio especifico.

2 respuestas
Merkury

#6 Confirmado que es HTML no se puede.

Y si, es un sinsentido.

eXtreM3

#2 #6 sí, html está claro pero quería saber el lenguaje del lado del servidor.

Creo que con aspx sí que se podría (creo) porque tiras de c# en el code behind. Con php busqué ayer rápidamente antes de contestar y no vi nada...

Y respondiendo a si tiene o no sentido... yo creo que sí lo tiene (o pudiera tenerlo). Seleccionas por defecto X directorio, rollo C:\ , y si no existe le das la oportunidad al usuario de elegirlo, o le das dicha oportunidad igualmente, pero sentido tiene xD

Pero por otra parte, en caso de que se pudiera, pienso que sería una vulnerabilidad a la privacidad del usuario no? Si te pones a listar todos los directorios que tiene en su pc y sabes si existen o no... puedes hacer cosillas wapas con eso, así que no, no creo que se pueda :P

2 respuestas
Merkury

#8 No se puede hacer da igual que lenguaje uses en el lado de servidor porque como bien dice #4 el control llama a la API de Windows y ya estas limitado porque no puedes modificarlo de ninguna de las maneras (a no ser que exista un exploit claro XD)

Spacelord

#8 Exacto, sería una vulnerabilidad y por eso no se permite. En Javascript tampoco, por cierto, ya lo busqué yo hace tiempo. En Java, por ejemplo, se puede hacer con un JFileChooser, se le puede asignar una carpeta default para cuando abra el cuadro de diálogo. Así que lo único que se me ocurre es un applet, pero no sé si le valdrá la pena a #1 complicarse la vida para eso.

1 respuesta
S

Gracias a todos por las respuestas.

#10 He optado por no complicarmela, jeje.

Usuarios habituales