m_r_e_s () ВОЗВРАЩАЕТ экранированное значение, оно не изменяет оригинал.
$int = mysql_real_escape_string($_POST['int']);
$query = "UPDATE ... interests = '$int' ...";
Обратите внимание, что я добавил кавычки вокруг int
в значении POST.Без кавычек PHP видит его как постоянное значение (например, define ()).Если он не находит константу с таким именем, он вежливо предполагает, что вы имели в виду, что вы использовали строку, и корректируете ее соответствующим образом, но выдает предупреждение.Если бы вы сделали
define('int', 'some totally wonky value');
ранее, то вы получили бы неправильное значение POST, потому что PHP будет видеть его как $_POST[some totally wonky value]
.