Me gustaría convencer a otro programador de que el uso de addlashes / addcslashes para escapar de los valores de consulta SQL no es seguro. Encontré esa respuesta con respecto a este tema: enlace
Pero no puedo hacer que esto funcione. Lo he intentado de esta manera:
<?php
$asHtmlEntity = '뼧'; // space here because stackexchange does not escape this
$string = html_entity_decode($asHtmlEntity);
$escaped = addslashes($string);
echo (($string === $escaped) ? 'same' : 'different');
$escaped = str_replace("'", "\'", $string);
echo (($string === $escaped) ? 'same' : 'different');
En ambos casos, se devuelve "igual". No entiendo porque. Por lo que yo entiendo, ambos casos deben devolver "diferente". ¿Hubo alguna solución de seguridad en PHP que aborde este problema o estoy haciendo algo mal?
Saludos cordiales mschop