ここで配布しているスクリプトも、konawikiと同じ、改変自由の修正BSDライセンスとします。自由に使ってください。
Wikiのデータが手元にある場合「data/konawiki.db」と同じフォルダで、以下のPHPを実行します。すると、DBの中身がテキストファイルで書き出されます。
<?php // konawikiのDBをテキストファイルに書き出す mb_internal_encoding("UTF-8"); mkdir("./text"); $db = new PDO("sqlite:./konawiki.db"); $stmt = $db->query("select * from logs"); while($r = $stmt->fetch(PDO::FETCH_ASSOC)){ //print_r($r); $name = $r["name"]; $body = $r["body"]; $fname = "text/".urlencode($name).".txt"; echo $name . "---" . $fname . "\n"; file_put_contents($fname, $body); } echo "ok.";
URLからページタイトルの一覧をつけたリンク記法を作成できます。
最新のkonawikiは、SQLite3に対応しています。旧バージョンのDBをSQLite3に対応させるには...(Windows環境にて)
sqlite.exe / sqlite3.exe を、sqlite のページから入手し、以下のバッチファイルと同じディレクトリにコピー。
file: sqlite2to3.bat
del tmp.sqlite del tmp.sqlite3 del tmp.txt copy %1 tmp.sqlite sqlite tmp.sqlite ".dump" > tmp.txt sqlite3 tmp.sqlite3 ".read tmp.txt" copy tmp.sqlite3 "%1.sqlite3" pause
ただし、上記がうまくいかない場合もあります。
その際は、編集ページを出して、「インポート」「エクスポート」を試してみてください。sqlite2で使っていたwikiに、action/export.inc.php をコピーすると、古いKonawikiのページでも、データをエクスポートできます。
既存のWIKIページのindex.phpを下記に差し替え。
「***」の部分を書き換えてください。
<?php // クエリーを取得 $q = $_SERVER['QUERY_STRING']; // 新しいページのURLにクエリーを付けてアクセス $uri = "http://***.com/***/index.php?{$q}"; header("Location: $uri"); echo <<< EOS <html><head> <meta http-equiv="refresh" content="秒数;URL=$uri"> </head><body> <a href="$uri">$uri</a> </body></html> EOS;