Есть задача.
В базе в поле BLOB хранятся serialize данные. В том числе поле image в котором хранится картинка. При закачке всё отлично пишется в базу.

PHP код:
<?
$fp = fopen($user_file, "r");
$contents = addslashes(fread($fp, filesize ($user_file)));
fclose($fp);
$serial['image']['content']= $contents;
$serial['image']['ct']= $content_type;
$to_base= serialize($serial);
?>
А потом возникает проблема. Если юзеру перезаписать данные, но не надо перезакачивать картинку логика простая:

PHP код:
<?
if(!is_uploaded_file($user_file)) {
$sql = "SELECT `serialize` FROM `adb` WHERE `id`='".$uid."'";
list($serial_i) = mysql_fetch_row(q($sql));
$serial_i = stripslashes($serial_i);
$un = unserialize($serial_i);
$image = $un['image']['content'];
$content_type = $un['image']['ct'];
if($image && $content_type)
{
$serial['image'] = $contents;
$serial['ct'] = $content_type;
}
$to_base = serialize($serial);
}
?>
Из базы берутся две переменные - сама картинка и её content-type (для проверки), в переменных то, что надо. тоесть именно то что и должно быть, это я проверял не раз. При записывании в базу и последующем аутпуте serialize'нуте данные пишутся правильно все кроме переменной $image. Все возможные add и strip slashes варианты я уже попробовал. Что делать я не совсем понимаю...