sql >> Base de Datos >  >> RDS >> Mysql

Consulta MySQL no insertada cuando la variable PHP contiene comillas simples

Considere usar consultas parametrizadas usando PDO por ejemplo.

Alternativamente, encierre sus variables entre corchetes { }.

Editar:

Extrañé que tu variable $subject contiene comillas simples. Esto significa que tienes que escapar de ellos. (Vea la gran cantidad de otras respuestas y mysql_real_escape_string() sobre esto). Pero como puede ver, las comillas simples dentro de la variable son exactamente cómo funcionan los ataques de inyección. Escaparlos ayuda a prevenir tales problemas y permite que su consulta almacene los datos esperados.

Ninguna respuesta sobre ataques de inyección está completa sin hacer referencia a Bobby Tables .