Foros del Web » Programando para Internet » PHP »

Applet no abre pdf si la ruta tiene espacios

Estas en el tema de Applet no abre pdf si la ruta tiene espacios en el foro de PHP en Foros del Web. Hola a todos! Os cuento mi problema. Tengo un applet que se encarga de abrir un pdf en remoto. Este pdf se encuentra en un ...
  #1 (permalink)  
Antiguo 06/04/2010, 10:29
 
Fecha de Ingreso: enero-2010
Mensajes: 69
Antigüedad: 14 años, 3 meses
Puntos: 0
Applet no abre pdf si la ruta tiene espacios

Hola a todos!

Os cuento mi problema. Tengo un applet que se encarga de abrir un pdf en remoto. Este pdf se encuentra en un servidor Linux, aunque yo trabajo en Windows. El caso es que cuando la ruta contiene espacios, no encuentra el pdf. Por ejemplo:

$local=\\\\saturno\\Carpeta\\Carpeta Uno\\nombre.pdf

donde $local será el parámetro local del applet.

He probado con las funciones urlencode y rawurlencode, pero ninguna de ellas me ha dado resultado. Si en vez de "Carpeta Uno", escribo "CarpetaUno" (cambiando también el nombre a la carpeta), sí funciona, pero el problema es que no puedo cambiar el nombre de la carpeta. Supongo que tendrá que ser escrito de forma que php lo pueda manejar y Linux lo pueda interpretar, pero no doy con ella.

Si alguien me puede echar una mano, se lo agradeceré en el alma.

Saludos y gracias de antemano!!
  #2 (permalink)  
Antiguo 06/04/2010, 10:45
Avatar de SergeMedina  
Fecha de Ingreso: septiembre-2007
Ubicación: Guadalajara, Jalisco
Mensajes: 459
Antigüedad: 16 años, 7 meses
Puntos: 20
Respuesta: Applet no abre pdf si la ruta tiene espacios

En linux es necesario escapar los espacios con / (slash).
__________________
I see dead pixels
  #3 (permalink)  
Antiguo 06/04/2010, 11:12
 
Fecha de Ingreso: enero-2010
Mensajes: 69
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Applet no abre pdf si la ruta tiene espacios

Gracias Serge, pero no ha dado resultado, interpreta el slash como un caracter más de la ruta. El error que obtengo es el siguiente:

Windows no puede encontrar el archivo '\\saturno\Carpeta\"Carpeta Uno"\nombre.pdf'

Esas dobles comillas que añade a Carpeta Uno me escaman, porque que yo recuerde Linux no las admite... De hecho, un chivato que le he puesto en el applet sí coge bien la ruta, y si escapo el caracter como me has indicado el error es el mismo, sólo que en vez de "Carpeta Uno" muestra "Carpeta/ Uno".

Gracias de todas formas
  #4 (permalink)  
Antiguo 06/04/2010, 12:36
Avatar de SergeMedina  
Fecha de Ingreso: septiembre-2007
Ubicación: Guadalajara, Jalisco
Mensajes: 459
Antigüedad: 16 años, 7 meses
Puntos: 20
Respuesta: Applet no abre pdf si la ruta tiene espacios

Me equivoque, el caracter de escape es backslash \, las carpetas separalas por slash /
__________________
I see dead pixels
  #5 (permalink)  
Antiguo 07/04/2010, 07:48
 
Fecha de Ingreso: enero-2010
Mensajes: 69
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Applet no abre pdf si la ruta tiene espacios

Muchas gracias, Serge, creo que he probado todas las combinaciones de / y \ , pero nada. Escribiendo la ruta como me has indicado, el archivo que no puede encontrar (según el mensaje de error) es el siguiente:

'//saturno/Carpeta\" Uno /2010/"nombre.pdf'

donde 2010 es una subcarpeta que omití anteriormente para no liar más el tema. No sé dónde se está produciendo el error, si en php o en formato Linux, o si lo estoy pasando mal como parámetro al entrecomillarlo de la siguiente forma:

echo "<param name=LOCAL value=\"".$local."\">";

pero si no hay espacios en la ruta, sí que funciona... En fin, si se te ocurre alguna idea, genial, y si no no te preocupes, muchas gracias de todas formas.

Saludos!
  #6 (permalink)  
Antiguo 07/04/2010, 12:00
 
Fecha de Ingreso: enero-2010
Mensajes: 69
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Applet no abre pdf si la ruta tiene espacios

Aunque finalmente no he podido encontrar la solución al problema, he podido cambiar los nombres de los directorios, por lo que podemos dar por cerrado el asunto.

Serge, muchas gracias por tu ayuda

Etiquetas: applet, espacios, pdf, ruta
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




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