m_r_e_s() ZWRACA wartość ucieczki, nie modyfikuje oryginału.
$int = mysql_real_escape_string($_POST['int']);
$query = "UPDATE ... interests = '$int' ...";
Zauważ, że dodałem cudzysłowy wokół int
w wartości POST. Bez cudzysłowów PHP widzi to jako stałą wartość (np. define()). Jeśli nie znajdzie stałej o tej nazwie, grzecznie zakłada, że chodziło Ci o użycie ciągu i odpowiednio się dostosuj, ale wyświetla ostrzeżenie. Jeśli to zrobiłeś
define('int', 'some totally wonky value');
poprzednio miałbyś dostęp do niewłaściwej wartości POST, ponieważ PHP widziałoby ją jako $_POST[some totally wonky value]
zamiast tego.