Desinfecte el formulario de contacto sin mysql_real_escape_string

Normalmente uso esta función para desinfectar mis entradas de formulario antes de almacenarlas en mi base de datos:

//Function to sanitize values received from the form. Prevents SQL injection
function clean($str) {
    $str = @trim($str);
    if(get_magic_quotes_gpc()) {
        $str = stripslashes($str);
    }
    return mysql_real_escape_string($str);
}

Hasta hoy no me di cuenta de esomysql_real_escape_string requiere una conexión a la base de datos, ya que solo la he usado cuando he estado limpiando los datos antes de almacenarlos en la base de datos.

Intenté usar la función en un formulario de contacto y recibí el error "No se pudo establecer un enlace al servidor". Podría conectarme a la base de datos, pero no es necesario porque simplemente estoy tratando de desinfectar los datos antes de enviarlos a mi correo electrónico a través del formulario de contacto.

¿Cuál es la mejor manera de desinfectar los datos que no se almacenan en una base de datos mysql? ¿Es necesario desinfectar estos datos?

Respuestas a la pregunta(4)

Su respuesta a la pregunta