При миграции с версии 1.10.1 на 1.10.2 в записях в универсальном каталоге исчез текст
Кто стакливался с проблемой отзовитесь…
#1
12 сентября 2013 в 19:33
#2
17 сентября 2013 в 12:08
Это все кавычки в записях, см. обсуждение
Для себя я исправил скрипт миграции
заменить это:
на это:
Для себя я исправил скрипт миграции
заменить это:
while($item = $inDB->fetch_assoc($result)){ $config_yaml = ($cfg) ? cmsCore::arrayToYaml($cfg) : "---\n"; $cfg_db = $inDB->escape_string($config_yaml); $inDB->query("UPDATE cms_uc_items SET fieldsdata='{$cfg_db}' WHERE id='{$item['id']}'"); }
while($item = $inDB->fetch_assoc($result)){ $parse_error = false; $cfg = false; // Detect unserialize Error } else { // unserialize failed. Try manual parse // fildsdata must be Array $src = $matches[2]; // Array items $cfg = $matches; } else { $parse_error = 'Array fildsdata parse failed. arraysize:'.$count; } } else { $parse_error = 'Unknown fieldsdata format'; } } if ($parse_error === false) { $config_yaml = ($cfg) ? cmsCore::arrayToYaml($cfg) : "---\n"; $cfg_db = $inDB->escape_string($config_yaml); $inDB->query("UPDATE cms_uc_items SET fieldsdata='{$cfg_db}' WHERE id='{$item['id']}'"); // echo "Item {$item['id']}: DONE. arraysize: ".count($cfg)." items<br>\n"; } else { // Short error message echo "Item {$item['id']}: FAIL. ".$parse_error."<br>\n"; // Detailed error message // echo "Item {$item['id']}: ".$parse_error." <span style='border-bottom:1px dashed black;cursor:pointer;' onclick='document.getElementById(\"uc_item_{$item['id']}\").style.display=\"block\"'>show</span><br>\n"; // echo "<div id='uc_item_{$item['id']}' style='display:none;margin:10px 0;'><textarea style='width:90%;height:10em;'>{$item['fieldsdata']}</textarea></div>\n"; } }
#3
17 сентября 2013 в 12:10
Не могу отредактировать пост.
Исправленный скрипт миграции
Исправленный скрипт миграции
Прикрепленный файл
indexphp_4abbm.zip
4 Кб