Also ran into some issues unserializing certain characters (such as [email protected]), WordPress’s built in functions handled input fine but viewing submissions wasn’t working.
I replaced the instances of @unserialize with a custom function mb_unserialize e.g.
function mb_unserialize($string) {
$string = preg_replace(‘!s:(\d+):”(.*?)”;!se’, “‘s:’.strlen(‘$2′).’:\”$2\”;'”, $string);
return unserialize($string);
}
Reason for this is because PHP’s unserialize doesn’t handle characters perfectly, probably would be better to store JSON in the database.
Free version again, as well.