Foros del Web » Programando para Internet » PHP »

interpretar comilla simple

Estas en el tema de interpretar comilla simple en el foro de PHP en Foros del Web. Hola a to2, vereis tengo el siguiente problema, tengo un proceso escrito en visualbasic el cual llama a una pagina php y le pasa una ...
  #1 (permalink)  
Antiguo 12/09/2006, 08:27
 
Fecha de Ingreso: septiembre-2003
Mensajes: 341
Antigüedad: 20 años, 7 meses
Puntos: 0
interpretar comilla simple

Hola a to2,
vereis tengo el siguiente problema, tengo un proceso escrito en visualbasic el cual llama a una pagina php y le pasa una serie de paramentos: la url es la siguiente:
Código:
 

la variable CodIni=21257' AND CodFin = '3456 lleva comilla porque luego se comprondrá la sentencia SQL
mi problema es que luego php interpreta la ' como \'
es decir mi sentencia se queda así:
select * FROM NombreTabla WHERE Id = '12111571\' AND CodFin = \'7173'
y no la interpreta correctamente mysql
¿Como puedo hacer para que me interpreta la ' como comilla simple?
__________________
---Nuestra recompensa se encuentra en el esfuerzo y no en el resultado. Un esfuerzo total es una victoria completa.-- GHANDI
  #2 (permalink)  
Antiguo 12/09/2006, 08:57
Avatar de ZiTAL  
Fecha de Ingreso: marzo-2004
Ubicación: Bermio (Bizkaia)
Mensajes: 1.545
Antigüedad: 20 años, 2 meses
Puntos: 62
no entiendo porque utilizas la comilla simple, luego dentro del php puedes hacer que la sentencia tenga comillas
__________________
http://zital.no-ip.org
____________________

Euskerie ahuen eta bijotzan
  #3 (permalink)  
Antiguo 12/09/2006, 09:08
Avatar de B**
B**
 
Fecha de Ingreso: enero-2006
Ubicación: Monterrey,Mexico
Mensajes: 952
Antigüedad: 18 años, 3 meses
Puntos: 3
Me imagino que tu campo en la BD..."id" es numerico o autonumerico.. entonces , yo tampoco entiendo para que le pones comillas...de hecho no son necesarias.
__________________
-URL= Go PHP5.
-Age=22.
-Learning=PHP,J2EE,Struts,MAMBO,C++,JSON,AJAX,XHTML ,CSS.
  #4 (permalink)  
Antiguo 12/09/2006, 10:18
 
Fecha de Ingreso: septiembre-2003
Mensajes: 341
Antigüedad: 20 años, 7 meses
Puntos: 0
ya lo he resuelto ,

las comillas son necesarias porque el campo id es alfanumerico (me venía así la base de datos) por eso tengo que pasar las comillas

os dejo la sentencia que quita la \:
stripslashes
__________________
---Nuestra recompensa se encuentra en el esfuerzo y no en el resultado. Un esfuerzo total es una victoria completa.-- GHANDI
  #5 (permalink)  
Antiguo 12/09/2006, 12:08
Avatar de ZiTAL  
Fecha de Ingreso: marzo-2004
Ubicación: Bermio (Bizkaia)
Mensajes: 1.545
Antigüedad: 20 años, 2 meses
Puntos: 62
;)

da igual que sea numerico que alfanumerico, tu coges las variables igual:

index.php?numerico=12345&alfanumerico=abcd12345

Código PHP:
$numerico=$_GET["numerico"];
$alfanumerico=$_GET["alfanumerico"];
$sql="select * from tabla where id_numerico=".$numerico." and id_alfanumerico='".$alfanumerico."'";
$sql_query=mysql_query($sql,$link);
... 
yo lo hago asi
__________________
http://zital.no-ip.org
____________________

Euskerie ahuen eta bijotzan
  #6 (permalink)  
Antiguo 12/09/2006, 12:09
Avatar de ArrauKano  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago
Mensajes: 664
Antigüedad: 21 años, 6 meses
Puntos: 4
No es necesario que pases la mitad de la consulta por la url. simplemente pasa los parametros necesaios y los pegas en la consulta final, modo que tu url te quede así:

http://www.dominio.com/comunica.php?...la=NombreTabla

en vez de

http://www.dominio.com/comunica.php?accion=del&CodIni=121257' AND CodFin = '3456&tabla=NombreTabla

y articular la consulta así

Código PHP:
<?php

$query 
'SELECT * FROM '.$_GET['tabla']. 'WHERE Id="'.$_GET['CodIni'].'" AND CodFin="'.$_GET['CodFin']."

?>
aunq si en realidad lo que necesitas es obtener el intervalo de registros entre inicio y fin deberías poner > y < en vez de =
__________________
Blog | Tecnosquad
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 15:22.