====== SPB Importer ====== Traduzione italiana (a tratti libera) del documento [[tools:db:spbimporter|SPB Importer]]. //[[drudo3@gmail.com|Luciano P.]] 2007/07/03// Fare un **BACKUP** della cartella ''content/'' prima di eseguire lo script. ''isoconvert.php'' importa e converte il "database" di SPB (Simple PHP Blog), codificato con il set iso-8859-1, per FlatPress ricodificato in UTF-8; inoltre rimuove alcune chiavi non supportate (//relatedlink//) e spazi bianchi. ===== Installazione ed uso ===== - Copiare il codice riportato poco sotto in un file, salvare con nome ''isoconvert.php'' e metterlo nella cartella di installazione di FlatPress. - Una volta messo nella cartella root di installazione, puntare il browser su http://yoursite/flatpress/isoconvert.php - **IMPORTANTE**: non dimenticare di **cancellare** questo file una volta terminata l' importazione. ===== Altre Informazioni Importanti ===== ''isoconvert.php'' può importare anche da file archiviati in formato GZ. L' importazione di file .gz è disabilitata di default, così per permettere la conversione si deve aggiungere un campo, quindi far puntare il browser al file in questo modo: http://mysite/flatpress/isoconvert.php?ungz=true **ATTENZIONE** in caso vengano SALTATI (SKIPPED) alcuni file GZ, NON è possibile far eseguire lo script una seconda volta con il parametro ''ungz=true'', poichè i rimanenti file sono già stati convertiti! Si consiglia quindi in questo caso di **cancellare** la cartella content/ e mettere al suo interno un backup pulito di SPB e quindi rieseguire lo script. Naturalmente è necessario un **backup** di riserva. E' possibile anche eseguire lo script [[tools:db:dump|DB Dump]] che genera un elenco di problemi comunemente riscontrabili. Se [[tools:db:dump|DB Dump]] elenca dei file GZ, allora **si deve** prima eseguire ''isoconvert.php'' ''con ungz=true''. ===== isoconvert.php ===== foundgz = true; echo "GZ: SKIPPED\n"; return 2; } echo "[WARNING] File was GZ, moving to TXT... "; $s = gzinflate(substr($s, 10 )); if (strpos($f, 'view_counter')!== false) { io_write_file($d . '/view_counter.txt'); echo "(uncompressed) "; } $f = substr($f, 0,-3); unlink($p); $p = "$d/$f"; } $s = mb_convert_encoding($s, 'UTF-8', 'ISO-8859-1'); if (($f != 'view_counter.txt') && (strpos($s, 'VERSION|') === false)) { echo " IMPORTING $f from old versions "; // compatibility with old versions -__-' $cont = explode('|', $s); if (strpos($f, 'entry')!==false) { $s = "VERSION|0.3|SUBJECT|{$cont[0]}|CONTENT|{$cont[2]}|DATE|{$cont[1]}"; } elseif (strpos($f, 'comment')!==false) { $s = "VERSION|0.3|NAME|{$cont[0]}|CONTENT|{$cont[2]}|DATE|{$cont[1]}"; } else { echo "SKIPPED\n"; return; } } // remove or replace offending keys $s = str_replace('relatedlink', 'RELATEDLINK', $s); $s = str_replace('TB_PING||', '', $s); $s = io_write_file($p, $s); echo "DONE\n"; } } } echo "======= FlatPress importer =======\n\n" ; echo "Starting process...\n"; $o =& new utfencoder; echo "\n\nFINISHED"; if ($o->foundgz) { echo "\nWARNING: DataBase contained GZ Files: FlatPress can't read GZipped files,\n" ; echo "so you should call again this script as in /isoconvert.php?ungz=true\n\n"; echo "Please notice that you will LOSE your original GZ files, so DO A BACKUP first."; } ?>