Las soluciones fáciles no siempre son lo más adecuado:
Cita:
Iniciado por PHP->addslashes() string addslashes ( string $str )
Devuelve una cadena con barras invertidas delante de los carácteres que necesitan escaparse en situaciones como consultas de bases de datos, etc. Los carácteres que se escapan son la comilla simple ('), comilla doble ("), barra invertida (\) y NUL (el byte NULL).
Un ejemplo de uso de la función addslashes() es cuando se introduce información en una base de datos. Por ejemplo, para insertar el nombre O'reilly en una base de datos, debe escaparse previamente.
Es muy recomendado usar la función de escape de la misma Bade de Datos (DBMS) (por ejemplo mysqli_real_escape_string() para MySQL o pg_escape_string() para PostgreSQL), pero si la Base de Datos (DBMS) que se está usando no tiene una función de escape y usa la barra invertida \ para escapar caracteres especiales, puede utilizar esta función. Esto sólo será para obtener los datos en la base de datos, La barra invertida \ extra no será insertada. Si la directiva PHP magic_quotes_sybase tiene el valor on entonces las comillas simples de tipo 'se escapan añadiendo otra comilla simple adelante. '.
http://www.php.net/addslashes Como puedes ver, addslashes() "puede ser útil" cuando no existe una función de escape para el motor de base de datos utilizado, en tu caso, sí existe esa función y es la que debes usar.
Te dejo algunas notas sobre seguridad y consejos para usar mysqli o PDO en lugar de mysql:
http://www.forosdelweb.com/f18/aport...8/#post4265377