У вас есть несколько проблем.
Во-первых, вам нужно присвоить вывод array_map()
переменной, поскольку она не выполняет преобразование на месте. Затем вам нужно вернуть его обратно в строку.
$data = "'".implode("', '", array_map('mysql_real_escape_string', $data))."'";
Большая проблема в том, что вы вручную собираете SQL, а не используете слой доступа к данным, который будет брать информацию, которую вы хотите сохранить, и использовать свои знания о том, где вы хотите хранить ее, чтобы собрать правильный оператор SQL, с должным цитированием и все.
Это также является стимулом для предложений использовать подготовленные операторы, между прочим, но простое использование подготовленных операторов - это только половина решения, потому что вы все равно будете собирать операторы SQL.