m_r_e_s() RETORNA o valor escapado, não modifica o original.
$int = mysql_real_escape_string($_POST['int']);
$query = "UPDATE ... interests = '$int' ...";
Observe que adicionei aspas ao redor do
int
no valor POST. Sem as aspas, o PHP o vê como um valor constante (por exemplo, define()). Se ele não encontrar uma constante com esse nome, ele assumirá educadamente que você quis usar uma string e ajustará de acordo, mas emitirá um aviso. Se você tivesse feito define('int', 'some totally wonky value');
anteriormente, você estaria acessando o valor POST errado, porque o PHP o veria como
$_POST[some totally wonky value]
em vez de.