Pues estoy haciendo un proyecto y necesito guardar las URL en una db y luego mostrarlas.
El problema es que quiero que no sea (logicamente) vulnerable a XSS ni a SQLi. Pero si quito muchos caracteres o lo limpio puedo perder caracteres vitales como / : ? = etc... que son necesarios.
Un saludo.
Entonces, creo que la mejor forma es usar,
string htmlentities ( string $string [, int $flags = ENT_COMPAT [, string $charset [, bool $double_encode = true ]]] )
Algo así,
$sCadena = '!"#$%&/()=?¡';
echo htmlspecialchars($sCadena, ENT_QUOTES, "UTF-8");
El resultado sería,
!"#$%&/()=?¡