El lenguaje SQL tiene delimitadores, imaginate que aparezca un caracter delimitador dentro del valor a ingresar. Eso te daría un error de consulta.
El ejemplo anterior era usando PDO, pero la librería MySQLi tiene (como ejemplo también)
real-escape-string
En cuanto al resto del filtrado, como te decía antes, depende de tu aplicación.
1_ Fijate que si usas un editor WYSIWYG no tendría sentido usar htmlentities.
2_ stripslashes depende de tu configuración de PHP
3_ El uso de trim depende solamente de si querés o no permitir espacios al principio o al final del texto ingresado.
Saludos