PHP - Espacios en blanco dentro de variable

 
Vista:
Imágen de perfil de siREZ
Val: 23
Ha disminuido su posición en 95 puestos en PHP (en relación al último mes)
Gráfica de PHP

Espacios en blanco dentro de variable

Publicado por siREZ (203 intervenciones) el 31/12/2012 16:03:01
Cordial saludo.

tengo un inconveniente
quiero pasar la siguiente variable a un script que la busca en la base de datos
$doc = 2005/12741 CUMPLIMIENTO TUTELA-CONSEJO SUPERIOR
esta variable ($doc) tiene 2 espacios entre 12741 y CUMPLIMIENTO
paso la variable utilizando la instrucción:
$doc = htmlspecialchars($_GET["doc"]);
pero esta nueva variable $doc no contiene los dos espacios entre 12741 y CUMPLIMIENTO
necesito que no me elimine los 2 espacios
alguna idea?????
otras variables pueden contener 3 o 4 espacios

gracias

siREZ
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Espacios en blanco dentro de variable

Publicado por xve (6935 intervenciones) el 31/12/2012 18:10:15
Hola, no se muy bien que te puede pasar, ya que htmlspecialchars(), no elimina los espacios en blanco...
1
2
$var=echo htmlspecialchars('codigo normal <con> espacios');
echo $var;

devuelve "codigo normal &lt;con&gt; espacios"

Revisa la variable $_GET["doc"] antes de ejecutar la función htmlspecialchars...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de siREZ
Val: 23
Ha disminuido su posición en 95 puestos en PHP (en relación al último mes)
Gráfica de PHP

Espacios en blanco dentro de variable

Publicado por siREZ (203 intervenciones) el 31/12/2012 20:12:51
a ver:
en: indice sala laboral.php tengo el siguiente enlace (entre 1678)
<a href="muestra documento.php?doc=JURISPRUDENCIA/SALA_LABORAL/docs/2005/12741%20%20CUMPLIMIENTO%20TUTELA-CONSEJO%20SUPERIOR">
12741</a>

notese que: 12741%20%20CUMPLIMIENTO tiene 2 espacios.

en el archivo: muestra documento.php? recupero el valor de la variable así:
$doc = htmlspecialchars($_GET["doc"]);

pero $doc no tiene los 2 espacios sino 1 espacio

htmlspecialchars(), no elimina los espacios en blanco, pero si me elimina el espacio adicional en blanco

pregunto:
1. hay otra instruccion similar a: htmlspecialchars()
2. Como puedo en php mostrar o tener 2 espacios en blanco seguidos?
3. Como puedo solucionar este inconveniente para que no sean eliminados los espacios en blanco adicionales?

No sé como revisar la variable: $_GET["doc"]


gracias de nuevo

siREZ
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Espacios en blanco dentro de variable

Publicado por xve (6935 intervenciones) el 01/01/2013 10:31:19
Ahora si te entiendo.... gracias por la info...

Esto te sucederá con varios tipos de caracteres, ya que estas pasando los parámetros por get, en los espacios te los cambia por %20...

No es muy aconsejable pasar el texto así es plano, si luego hay que trabajar con el, ya que puede ser variado por los navegadores o por algún usuario.

Si aun así tienes que pasarlo, te recomiendo que lo pases a base64 para pasarlo por get.

base64_encode()
base64_decode()


http://php.net/manual/es/function.base64-encode.php

Espero que te sirva.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de siREZ
Val: 23
Ha disminuido su posición en 95 puestos en PHP (en relación al último mes)
Gráfica de PHP

Espacios en blanco dentro de variable

Publicado por siREZ (203 intervenciones) el 01/01/2013 16:09:50
Gracias XVE.
voy a estudiar el tema

siREZ
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar