Ver Mensaje Individual
  #10 (permalink)  
Antiguo 16/01/2014, 10:20
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: ¿Como escapar comillas simples para que no generen errores en consulta?

Cita:
Iniciado por MeDxEc Ver Mensaje
Tengo una pequeña duda... ¿Las variables se escapan antes o después del query? Veo en la documentación que las escapan despues del query pero el query del ejemplo es un "SELECT" y el mío es un "INSERT" así que... Siguiendo la lógica diría que ¿para qué voy a escapar variables después de que se ejecuta el query? Lo correcto sería escaparlas antes del INSERT ¿no? Perdón si sueno muy noob x_x

Cabe resaltar que estoy usando la vieja función mysql_real_escape_string() y no la de mysqli o PDO.
Primero: ¿Te importa cómo?
La verdad, no... El cómo hace el escapado es irrelevante.

Segundo: ¿Cuándo?
Buieno, el manual es claro: Se debe aplicar la función a las variables de datos. No a la sentencia.

Tercero: ¿Es diferente hacerlo para SELECT que para INSERT?


NO. Obviamente no. Porque lo que hay que scapar es el contenido de las variables de datos que ingresan, y eso es independiente de la sentencia SQL.
Lo que no debes hacer es aplicar esa función a una variable que contenga una sentencia SQL.
Como mucho, si quieres, debes ponerla aplicada a las variables de datos que le estás incrustando:
Código PHP:
$qry "SELECT .... FROM ... 
WHERE XXX = "
mysql_real_escape_string($variable)." ..."
¿Se entiende?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 16/01/2014 a las 10:25