Foros del Web » Programando para Internet » PHP »

mysql_escape_string vs addslashes

Estas en el tema de mysql_escape_string vs addslashes en el foro de PHP en Foros del Web. Quería saber si ambas funciones 'escapan' los mismos caracteres no válidos ya que estoy intentando 'abstraer' el código de mi web para que pueda usar ...
  #1 (permalink)  
Antiguo 21/11/2005, 15:26
 
Fecha de Ingreso: julio-2003
Ubicación: España
Mensajes: 723
Antigüedad: 20 años, 8 meses
Puntos: 0
mysql_escape_string vs addslashes

Quería saber si ambas funciones 'escapan' los mismos caracteres no válidos ya que estoy intentando 'abstraer' el código de mi web para que pueda usar distintos SGBD...

Saludos.
__________________
Solo nosotros podemos decidir qué hacer con el tiempo que se nos ha dado. (Gandalf)
  #2 (permalink)  
Antiguo 21/11/2005, 16:02
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 19 años
Puntos: 17
En mysql_escape_string dice " Esta función se convirtió en obsoleta, no use esta función. En su lugar, use mysql_real_escape_string."
Dice que escapa los caracteres \x00, \n, \r, \, ', " y \x1a.

addslashes escapa Los caracteres que se escapan son la comilla simple ('), comilla doble ("), barra invertida (\) y NUL (el byte NULL).

Coinciden: ' " \
mysql_real_escape_string solo: \x00 \n \r \x1a
addslashes solo: null

PD: no tengo idea cual es la diferencia... Si escapa a \ no escapa tb a \n? xq en mysql_real_escape_string aparece aparte? no entiendo
  #3 (permalink)  
Antiguo 21/11/2005, 17:50
 
Fecha de Ingreso: julio-2003
Ubicación: España
Mensajes: 723
Antigüedad: 20 años, 8 meses
Puntos: 0
Bueno, he sustituido todos mis myql_escape_string por addslashes y parece que funciona todo correctamente.

Saludos y gracias.
__________________
Solo nosotros podemos decidir qué hacer con el tiempo que se nos ha dado. (Gandalf)
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 03:07.