http://php.net/manual/es/function.my...ape-string.php
Nota: mysql_real_escape_string() no escapa % y _. Estos son comodines en MySQL que se combinan con LIKE, GRANT, o REVOKE.
El manual dice que no se escapan, no entiendo, estas seguro que los escapa, como dije, he visto inyecciones que son muy complejas y que no usan comillas, pero usan caracteres especial.
Basicamente el campo de texto se usaria para enviar mensajes entre usuarios. Los mensajes pueden ser de cualquier tipo y pueden ser en ingles, por lo tanto no puedo filtrar select drop etc, tampoco puedo filtrar simbolos especiales como & o %. Si un usuario quiere enviar justamente un ejemplo de inyeccion sql, como hago para que la inyeccion sql se mantenga como texto?
Como se hace en los foros para evitar la inyeccion sql en los post? simplemente usan mysql_real_escape_string()???