Bueno no sabia que titulo poner a este post

... Tengo este problema. Tengo un formulario de comentarios, donde al enviar el form los valores de los campos se guardan en una variable de sesión:
Código PHP:
$_SESSION['form_vars'] = $_POST;
de tal manera que si hay algun error en el form, este no se envie y regrese a la página del formulario donde los campos seran llenados automaticamente usando esta variable de sesión:
Código HTML:
<textarea class="input1" name="comments" rows="15" cols="80"><? echo $_SESSION['form_vars']['comments']; ?></textarea>
Todo funciona bien asi, excepto que cuando el usuario pone por ejemplo

(smiley llorando), y el form tiene errores, al volver en vez de

me devulve :\'(, si lo envio asi, aun con errores el formulario, al regresar viene como :\\\'(, y luego :\\\\\\\'( y asi sucesivamente... como puedo arreglar esto??
salu2