I assume one of the elements $_POSTis really an array rendering something like this:
print_r($_POST);
Array
(
...
'element' => Array
(
'subelement' => 'some value'
)
...
)
When it array_maptries to pass a value $_POST['element']to mysql_real_escape_string, it produces the error you described.
, - () :
function recursive_escape(&$value) {
if (is_array($value))
array_map('recursive_escape', $value);
else
$value = mysql_real_escape_string($value);
}
array_map('recursive_escape', $_POST);