Aporto algo mas:
htmlspecialchars
Convierte caracteres especiales a entidades HTML
Código PHP:
string htmlspecialchars ( string cadena)
Ciertos caracteres tienen significados especiales en HTML, y deben ser representados por entidades HTML si se desea preservar su significado. Esta función devuelve una cadena con dichas conversiones realizadas.
Esta función es útil para evitar que el texo entrado por el usuario contenga marcas HTML, como ocurre en aplicaciones de foros o libros de visita.
Actualmente, las traducciones hechas son:
'&' (ampersand) se convierte en '&'
'"' (doble comilla) se convierte en '"'
'<' (menor que) se convierte en '<'
'>' (mayor que) se convierte en '>'
Nótese que esta función no traduce nada más que lo mostrado más arriba.
htmlentities
Código PHP:
string htmlentities ( string $string [, int $quote_style [, string $charset ]] )
Esta función es identica en todo a htmlspecialchars(), excepto que con htmlentities(), todos los caracteres que tengan una entidad equivalente en HTML serán cambiados a esas entidades.
En htmlspecialchars(), el parámetro opcional quote_style le permite definir lo que será hecho con las comillas 'sencillas' y las "dobles". Toma uno de tres constantes con ENT_COMPAT
Constantes disponibles para quote_style:
ENT_COMPAT Convertirá las dobles comillas y dejará solo las comillas sencillas.
ENT_QUOTES Convertirá las comillas dobles y sencillas.
ENT_NOQUOTES Mantendrá las comillas dobles y sencillas sin cambios.
Cualquier otro juego de caracteres no es reconocido y en su lugar se utilizará ISO-8859-1.
mysql_real_escape_string
Escapa caracteres especiales de una cadena para su uso en una sentencia SQL
Código PHP:
string mysql_real_escape_string ( string $cadena_no_escapada [, resource $id_enlace ] )
Escapa todos los caracteres especiales en la cadena_no_escapada , tomando en cuenta el juego de caracteres actual de la conexión, de tal modo que sea seguro usarla con mysql_query(). Si se van a insertar datos binarios, debe usarse esta función.
mysql_real_escape_string() llama a la función de la biblioteca MySQL mysql_real_escape_string, la cual coloca barras invertidas antes de los siguientes caracteres: \x00, \n, \r, \, ', " y \x1a.
Esta función debe usarse siempre (con algunas excepciones) para garantizar que los datos sean seguros antes de enviar una consulta a MySQL
Devuelve la cadena escapada, o FALSE en caso de que ocurra un error.