Web wiz 7.9 to phpbb3 3.0.12 轉換

phpBB 3 Conversion Support
phpBB 2 轉換 (升級) 到 phpBB 3 之問題討論!

版主: 版主管理群

版面規則
本區是討論關於 phpBB 2 轉換升級到 phpBB 3 之問題討論!

參考連結:
官方 phpbb.com 自訂資料庫已收錄之轉換器
主題已鎖定
頭像
Risen
星球普通子民
星球普通子民
文章: 3
註冊時間: 2016-02-01 19:21

Web wiz 7.9 to phpbb3 3.0.12 轉換

文章 Risen » 2016-02-03 18:31

研究了好幾週 爬了好幾篇文章 總算可以完整轉換成功 但是還是有些BUG要確認
目前得知 轉換過去的 Private Message功能好像還有些問題.....

這邊先紀錄我怎麼轉換過來的過程 便於我日後回憶
主要分成兩部分

第一部分:轉換資料庫
環境:Win10 or 7 (都可以使用)
軟體:xampp-win64-7.0.2-installer (最新版才不會出錯!!)
轉換程式:mysql-connector-odbc-5.2.5-winx64 (依照電腦架構選擇對應的即可)
資料庫位置: 論壇檔案底下\admin\database

如何轉換將 原本的架構 mdb 轉換到 mysql 我參考這篇文章
點我連結

轉換過程十分順利

需要轉換的論壇大約有20萬筆回覆 2萬多比主題....營運快10年的論壇 Orz
但是資料都沒有遺失 可以完美的轉換上去 :D

轉換上去之後 再匯出SQL檔案
匯出後 我們必須先做修改才能 匯入舊版的資料庫中

使用 sublime text 打開 SQL檔案 (我的大約50mb左右)
打開約需要3分鐘吧 打開找到 utf8mb4 改成 utf8 即可完成此部分

第二部分:轉換架構
環境:Win10 or 7 or Windows server 2003 (都可以使用)
軟體:xampp-win32-1.7.1-installer (一定要用舊版轉換程式才不會出錯!!)
論壇軟體:phpBB-3.0.RC1

這邊先安裝舊版之後再升級 因為原作者轉換程式是設計給 phpBB-3.0.RC1

參考連結
下載部落格中作者提供的附件 將檔案解壓縮出來會有四個檔案
functions-webwiz-hash.php
functions_webwiz.php
convert_webwiz.php
auth_db.php

轉換過程將
functions_webwiz.php
convert_webwiz.php

這兩個檔案提出放到
C:\xampp\htdocs\phpBB3\install\convertors (參考phpbb2 to phpbb3)

接著就轉換吧!!!!!我轉一次大概6小時~12小時左右(依照CPU和RAM有差! 我轉很多次..)

轉換完成後如果不希望使用者重新變更密碼 那必須將

functions-webwiz-hash.php
auth_db.php
各別放在不同的地方

functions-webwiz-hash.php 放置於
C:\xampp\htdocs\phpBB3\includes

auth_db.php 放置於
C:\xampp\htdocs\phpBB3\includes\auth


然後移除 C:\xampp\htdocs\phpBB3 底下的 install 資料夾即可看見論壇
登入一下原本的帳號確認是否無誤

如果忘記Admin帳號 可以透過下列方法:
打開mysql資料庫 然後選擇 phpbb3的資料庫 新增一段語法
INSERT INTO phpbb_users (user_type, group_id, username, username_clean, user_regdate, user_password, user_email, user_lang, user_style, user_rank, user_colour, user_posts, user_permissions, user_ip, user_birthday, user_lastpage, user_last_confirm_key, user_post_sortby_type, user_post_sortby_dir, user_topic_sortby_type, user_topic_sortby_dir, user_avatar, user_sig, user_sig_bbcode_uid, user_from, user_icq, user_aim, user_yim, user_msnm, user_jabber, user_website, user_occ, user_interests, user_actkey, user_newpasswd) VALUES (3, 5, 'Admin1', 'admin1', 0, '21232f297a57a5a743894a0e4a801fc3', 'admin@yourdomain.com', 'en', 1, 1, 'AA0000', 1, '', '', '', '', '', 't', 'a', 't', 'd', '', '', '', '', '', '', '', '', '', '', '', '', '', '');

帳號:Admin1
密碼:admin

即可進行管理
=======
升級過程

無法直接直升 3.0.12 會錯.........

因此必須先升級到3.0.RC2 再升級到 phpBB-3.0.0 最後才可以升級到 3.0.12

參考點我
=======

筆記到此 後續還再測試

頭像
Risen
星球普通子民
星球普通子民
文章: 3
註冊時間: 2016-02-01 19:21

Re: Web wiz 7.9 to phpbb3 3.0.12 轉換

文章 Risen » 2016-02-12 16:35

Private Message 重新啟用模組即可恢復正常

Search 功能異常 需要重建 index 重建後也都正常了
這邊記得要選用 Native 而不是 Mysql (我自己測試用Native才會正常..)

登入功能異常 原先使用的auth_db.php 只能用於3.0.1.rc
由於升上 3.0.12的關係 必須手動去修改程式碼

改成

// Check password ...
// added for webwiz conversion
// HashEncode is webwiz function.
global $phpbb_root_path, $phpEx;
require($phpbb_root_path . 'includes/functions-webwiz-hash.' . $phpEx);
if (!$row['user_pass_convert'] && (phpbb_check_hash($password, $row['user_password'])
or HashEncode($password.$row['salt'])==$row['user_password'] ))
{
// Check for old password hash...
if (strlen($row['user_password']) == 32)
{
$hash = phpbb_hash($password);

// Update the password in the users table to the new format
$sql = 'UPDATE ' . USERS_TABLE . "
SET user_password = '" . $db->sql_escape($hash) . "',
user_pass_convert = 0
WHERE user_id = {$row['user_id']}";
$db->sql_query($sql);

$row['user_password'] = $hash;
}

$sql = 'DELETE FROM ' . LOGIN_ATTEMPT_TABLE . '
WHERE user_id = ' . $row['user_id'];
$db->sql_query($sql);

if(phpbb_check_hash($password, $row['user_password'])!= true)
{
// Unconverted password
$sql = 'UPDATE ' . USERS_TABLE . '
SET user_password = "'.md5($password).'"
WHERE user_id = ' . $row['user_id'];
$db->sql_query($sql);
}
大概是這樣

主題已鎖定

回到「[3.0.x] 轉換」