Foros del Web » Programando para Internet » PHP »

comillas simples en url

Estas en el tema de comillas simples en url en el foro de PHP en Foros del Web. Hola a tod@s: No estoy seguro si este tema tiene que ir aquí. Quiero enviar un insert en la url, el php lo recoge con ...
  #1 (permalink)  
Antiguo 13/10/2011, 06:16
 
Fecha de Ingreso: enero-2011
Mensajes: 88
Antigüedad: 13 años, 3 meses
Puntos: 1
comillas simples en url

Hola a tod@s:
No estoy seguro si este tema tiene que ir aquí.
Quiero enviar un insert en la url, el php lo recoge con $_GET y ejecuta contra la base de datos.

La url es esta:
//localhost/ejecutor.php?usuario=yo&pass=mipass&sql=insert into tabla1 (edad, fecha) values (23, '2011-04-12')

En el código se vé claro.
El php es este:

$usuario = $_POST["usuario"];
$pass = $_POST["pass"];
$sql = $_POST["sql"];
$conn = pg_connect('host=localhost dbname=basedatos port=5432 user='.$usuario.' password='.$pass);
$result = pg_query($conn, $sql);
pg_close($conn);

Al hacer $sql = $_GET["sql"]

El $sql queda con el siguiente valor = "insert into tabla1 (edad, fecha) values (23, \'2011-04-12\')" por lo que no se puede ejecutar contra la BBDD por las contrabarras que aparecen en el insert.

¿Como puedo solucionar el problema de las comillas?

Gracias, atentamente Eñaut.
  #2 (permalink)  
Antiguo 13/10/2011, 06:21
 
Fecha de Ingreso: agosto-2011
Ubicación: España
Mensajes: 445
Antigüedad: 12 años, 8 meses
Puntos: 89
Respuesta: comillas simples en url

Prueba con: pg_escape_string o stripslashes()
  #3 (permalink)  
Antiguo 13/10/2011, 07:18
 
Fecha de Ingreso: enero-2011
Mensajes: 88
Antigüedad: 13 años, 3 meses
Puntos: 1
Respuesta: comillas simples en url

funciona! Gracias por la ayuda, muy efectivo.

Atentamente eñaut.
  #4 (permalink)  
Antiguo 13/10/2011, 08:55
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: comillas simples en url

Insert por $_GET

Espero que solo tu tengas acceso a esa pagina y tu manejo de sesiones sea muy bueno, porque los riesgos de hacer algo asi son muy altos... por decir lo menos.
__________________
- León, Guanajuato
- GV-Foto
  #5 (permalink)  
Antiguo 13/10/2011, 09:00
 
Fecha de Ingreso: enero-2011
Mensajes: 88
Antigüedad: 13 años, 3 meses
Puntos: 1
Respuesta: comillas simples en url

ya , la prueba es con get pero luego en la llamada real estoy utilizando post

Gracias de todos modos por la observación.

Atentamente eñaut.
  #6 (permalink)  
Antiguo 13/10/2011, 09:05
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: comillas simples en url

Aunque sea por POST es muy inseguro lo que quieres hacer, si lo dejas así da tu pagina por hackeada en muy poco tiempo...
  #7 (permalink)  
Antiguo 13/10/2011, 09:05
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: comillas simples en url

Bueno, de cualquier forma, no envies la consulta directamente (ni por URL, ni por formulario), solo los datos y validalos para evitarte dolores de cabeza.
__________________
- León, Guanajuato
- GV-Foto

Etiquetas: comillas, simples, sql, tabla, url, usuarios
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 01:20.