|
一:转换前准备
1、首先,将原DV7.1Access论坛的数据库备份到本地。并复制一份做为备份。虽然说转换成功率非常高,数据也不会丢失,但是及时备份数据库是个好习惯。
2、下载PHP环境以及Discuz!程序安装包—Discuz!EXP,地址:http://www.discuz.net/thread-223885-1-1.html
3、下载DV7.1Access转换为Discuz4.1转换程序,地址:http://www.discuz.net/thread-301910-1-1.html
4、将你准备转换的DV7.1Access论坛的数据库,将名称改为DVBBS7.MDB。
 图1:动网数据库改为DVBBS7.MDB
二:安装DiscuzEXP
1、DiscuzEXP文件包解压缩并打开,点击“setup.exe”文件,系统自动执行DiscuzEXP安装程序。
 图2:点击setup.exe开始安装
2、输入安装路径。
 图3:输入DiscuzEXP安装
3、输入MYSQL用户名和密码。
 图4:输入MYSQL用户名和密码
4、设置Apache服务器端口。
 图5:设置Apache服务器端口
三:开始转换
1、将DV7.1Access转换Discuz4.1转换程序复制到DiscuzEXP的wwwroot文件夹内(为了使用方便,在这里可以将文件夹名称改为to)。
 图6:复制转换程序到指定文件夹
2、将动网DV7.1Access论坛的数据库放到DiscuzEXP/wwwroot文件夹内。
 图7:复制动网数据库到指定文件夹
3、用记事本打开转换程序to/dv7xacc-dz410.php文件,按照图片要求修改相关设置。
 图8:用记事本打开dv7xacc-dz410.php文件;
 图9:修改相关设置;
4、修改完毕后保存。
 图9-2:保存设置
5、然后在浏览器输入“http://localhost:8080/to/dv7xacc-dz410.php”,运行dv7xacc-dz410.php文件。系统进入转换程序运行界面,选择“点击开始转换”,转换程序开始自动执行。
 图10:选择左下角的“点击开始转换”。
6、系统在自动进行数据转换。
 图11:进行数据转换;
 图12:数据转换完毕;
7、根据转换完毕的提示“请用我们给您的logging.php文件覆盖论坛程序的logging.php文件,这样老用户才可以登录。”, 将转换程序中附带的logging.php文件覆盖到DiscuzEXP论坛程序中的logging.php文件。
 图13:复制logging.php文件
8、在浏览器打开http://localhost:8080,用转换中设置的管理员ID登录论坛。点开“系统设置—>Discuz!设置—>更新缓存和”,“更新论坛统计”中的各项。
 图14:更新缓存和更新论坛统计
四:论坛附件和图像
论坛中除了文字外,还有附件和图像。为了得到更高的转换率,需要对原论坛附件和图像再进行单独处理。
1、图像:将原动网论坛数据库中的“UploadFace”文件夹和“Images”下的“userface”文件夹内所有文件复制到新安装的Discuz!论坛中的“images”下的“avatars” 文件夹中。
 图15:
2、附件:将原动网论坛数据库中“UploadFile”文件夹移动到Discuz!论坛的“attachments”文件夹中。
 图16:
这样你原来上传的附件和图象都可以恢复了。好吧,我们现在看看图象的显示情况~~~
好啦~现在你的论坛程序已经成功的由DV7.1Access转换为Discuz4.1论坛,你可以好好的设置你的论坛了,祝大家转换顺利!
作者:曹海舟
一、环境配置
选择的服务器环境是WINXP+II5,首先请确保电脑上的IIS已经配置完成,并且IIS的主目录指向D:\WEB。
1、让服务器支持PHP。我选择的是php-4.3.11-Win32.zip 解压缩PHP压缩包到C:\PHP(这个路径可以随意,不过以下要是用到这个路径,请相应的修改)。 复制C:\PHP目录下的php4ts.dll及C:\PHP\dlls目录下的所有文件到windows的c:\windows\system32文件夹里: 其中C:为你现在所使用的操作系统的系统盘,如果你目前操作系统不是安装在C:\windows下,请相应做出修改。 复制php.ini-dist到C:\windows下,并将其改名为php.ini。然后用记事本打开,利用记事本的查找功能搜索 extension_dir = "./",并将其路径指到你的 PHP 目录下的 extensions 目录,比如:extension_dir = "C:\PHP\extensions";再搜索 register_globals = Off,将 Off 改成 On,直接保存关闭 php.ini 即可。
2、让服务器支持MYSQL。我选择的是mysql-4.0.20d-win.zip 下载获得Mysql的for win32安装包后,用winzip解压缩,直接运行setup.exe,需要注意的是选择一个安装路径,当然,安装路径可以任意,建议选择C:\MySQL目录。安装完成后MySQL也就完成了。默认的用户名是root,密码为空。 进入C:\mysql\bin\,双击winmysqladmin.exe,就可以启动MYSQL数据库了(此时在系统托盘处可以看到 图标)
3、让IIS对PHP进行解析。 请按以下图示操作




至此Discuz!论坛的运行环境就全部配置完毕了。
二、准备好待转换的雷傲论坛程序
根据我的经验是直接将雷傲论坛的全部文件下载下来,分为cgi-bin和non-cgi两个文件夹,存放到D盘的LBBBS目录下面。
三、配置LB2DZ转换程序,开始转换
转换程序可以在Discuz!官方进行下载, 下载地址:http://www.discuz.net/thread-249700-1-1.html
配置转换程序lb32discuz41.php
本地 //$lb_user = "D:/LBBBS/cgi-bin/members6VzyhOD9L/"; // LB的用户资料绝对路径, 最后不要遗漏"/" //$lb_dir = "D:/LBBBS/cgi-bin/"; // LB 的绝对路径, 最后不要遗漏"/" //$lb_attach = "D:/LBBBS/non-cgi/usr/"; // LB 附件路径, 最后不要遗漏"/" //$lb_attach = "D:/WEB/discuz/attachments/LBuploads/"; ///LB附件移动到Discuz!4.1.0目录中的位置,后面添加/
服务器 //$lb_user = " D:/LBBBS/cgi-bin/members6VzyhOD9L/"; // LB的用户资料绝对路径, 最后不要遗漏"/" //$lb_dir = " D:/LBBBS/cgi-bin/"; //$lb_attach = "D:/WEB/discuz/attachments/LBuploads/"; // LB 附件路径, 最后不要遗漏"/"
在本地安装Discuz!4.1程序 安装目录设为D:\WEB\discuz,在浏览器目录执行安装程序install.php。 需要注意的是以下的设置:数据库用户名默认的root,数据库密码保留空(因为当初安装的时候没设密码的哈),数据库名称就写个test的吧。

然后一路下来就可以将Discuz!4.1安装好。
开始进行数据的转换工作 运行转换程序lb32discuz41.php,如果一切顺利,转换程序将一直自动运行到结束。我在经过几次转换后,也总结了一些常见的问题和错误。 出现问题最多的就是在转换用户数据那步,经常因为用户名有重复而导致进程的终止。 解决好了用户数据转换这步,其他步骤的转换都是水到渠成的事情。 经过多次摸索,我采用了另外的一种转换方式,首先将雷傲的用户数据转换成动网的,再使用动网转DZ的程序,完整的把用户数据转换过来。经过多次实践,这个方法能够保证用户数据最大程度的完整。
雷傲转动网的程序可以到下面地址下载: http://www.discuz.net/viewthread.php?tid=232205&extra=page%3D1%26filter%3Ddigest
转换完成后,记得到后台管理那更新各项统计信息。 同时记得把雷傲的所有附件移到D:/WEB/discuz/attachments/LBuploads/下 最后来完成对附件的关联
升级数据库,执行:
SELECT MAX(tid) FROM cdb_threads;
请在./include/discuzcode.func.php中找到
for($i = 0; $i <= $discuzcodes['pcodecount']; $i++) { $message = str_replace("[\tDISCUZ_CODE_$i\t]", $discuzcodes['codehtml'][$i], $message); }
上面加
//LB转换数据后专用 $tid是你主题的最大id global $fid,$tid; if ($tid < 11253) { $lbfilepath = './attachments/lbupfile/'; $message = preg_replace(array( "/\[UploadFile=([^\[]+?)\.(gif|jpg|png|bmp|jpeg)\]/ies", "/\[UploadFile=(.*)\]/ies"), array( "bbcodeurl('\\1', '<center><img src=\"".$lbfilepath.$fid."/\\1.\\2\" border=\"0\"
onload=\"if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt=\'Click here to open new
window\';}\" onmouseover=\"if(this.resized) this.style.cursor=\'hand\';\" onclick=\"if(this.resized) {window.open(\'%s\');}
\"></center><b [1] [2] 下一页 |