PHP - pasar por GET un signo '+'

 
Vista:

pasar por GET un signo '+'

Publicado por Daniel (2 intervenciones) el 12/01/2007 16:02:12
Cuando envio una query por metodo GET a una clase para escribir el resultado de esa query en un archivo xls y descargarlo, se me desaparece el signo y obviamente no me funciona, me explico con la parte afectada de la query :

query que viaja : '(despacho::float + vol_planta::float) as vol_total',
quedando '(despacho::float vol_planta::float) as vol_total'

Como hago que el signo '+' no se desaparesca?
si alguien me puede ayudar le estaria agradecido
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

RE:pasar por GET un signo '+'

Publicado por Gonzalo (84 intervenciones) el 12/01/2007 16:46:57
1. Cómo hacerlo?
Lo que tendrías que hacer es antes de enviar la petición, hacer en Javascript un encodeURI() o un escape(). Luego cuando lo recibes, en PHP harías un URLdecode().

2. Pero mejor NO hacerlo.
De todos modos, NO es buena idea pasarte así un trozo de query que luego vayas a lanzar sobre tu base de datos. Es claramente una puerta fácil para ataques de inyección de SQL.
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

RE:pasar por GET un signo '+'

Publicado por Daniel (2 intervenciones) el 12/01/2007 16:55:50
Muchas gracias gonzalo... ya encontre una alternativa mucho mas facil... ya no envio la query completa sino que solo los parametros de busqueda, la query espera esos parametros en el archivo php que corresponde ('no lo hice antes por que necesitaba un cafe y un cigarro'). lo que dices es completamente cierto, estaba regalando la alternativa a una inyeccion sql.
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