📄 bmb51toplus.php
字号:
<?
//-----------------------------------------------------------
// Blue Magic Board 蓝色魔法论坛 BMB (又名BMForum)
// 获取最新升级资讯: http://www.bmforum.com
// 版权所有 (C) 未经允许不得删除版权信息
// 官方站点: http://www.bmforum.com
//-----------------------------------------------------------
require('datafile/idunique.php');
require('datafile/idpath.php');
error_reporting(E_ERROR | E_WARNING | E_PARSE);
@set_time_limit(0);
if($_GET['action']==""){
?>
<b>欢迎使用 BMForum 5.1 到 BMForum Plus! 1.0 转换程序</b><br><br>
本程序将把您的 BMForum 5.x 数据全面转换为 BMForum Plus! 所兼容的 UTF-8 国际化数据<br>
<br>此过程可能会耗费较多时间,请耐心等待,不要关闭浏览器、不要停止浏览,不要刷新浏览器!<br><br>
<a href=bmb51toplus.php?action=datafile>点击这里进入第一步</a><br><br>
转换数据前,请一定先备份数据!如有任何疑问或错误,请立即访问 <a href=http://www.bmforum.com/bmb>官方论坛</a>
<?
}elseif($_GET['action']=="datafile"){
$dir = "datafile/";
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
if(filetype($dir . $file)=="file"){
$newdata=iconv("GB2312", "UTF-8", readfromfile("datafile/".$file));
writetofile("datafile/".$file,$newdata);
}
}
closedir($dh);
}
}
$dir = "datafile/style/";
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
if(filetype($dir . $file)=="file"){
$newdata=iconv("GB2312", "UTF-8", readfromfile("datafile/style/".$file));
writetofile("datafile/style/".$file,$newdata);
}
}
closedir($dh);
}
}
$dir = "datafile/usergroup/";
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
if(filetype($dir . $file)=="file"){
$newdata=iconv("GB2312", "UTF-8", readfromfile("datafile/usergroup/".$file));
writetofile("datafile/usergroup/".$file,$newdata);
}
}
closedir($dh);
}
}
?>
<b>欢迎使用 BMForum 5.1 到 BMForum Plus! 1.0 转换程序</b><br><br>
datafile 目录转换完成<br>
<br>请做好准备迎接下一步转换 用户资料 数据<br><br>
<a href=bmb51toplus.php?action=user>点击这里进入第二步</a><br><br>
如有任何疑问或错误,请立即访问 <a href=http://www.bmforum.com/bmb>官方论坛</a>
<?
}elseif($_GET['action']=="user"){
$dir = "$id_unique/";
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
if(filetype($dir . $file)=="file"){
$newdata=iconv("GB2312", "UTF-8", readfromfile("$id_unique/".$file));
unlink("$id_unique/".$file);
writetofile("$id_unique/".urlencode(iconv("GB2312", "UTF-8",$file)),$newdata);
}
}
closedir($dh);
}
}
?>
<b>欢迎使用 BMForum 5.1 到 BMForum Plus! 1.0 转换程序</b><br><br>
用户资料 目录转换完成<br>
<br>请做好准备迎接下一步转换 版块帖子 数据,此步将比较缓慢<br><br>
<a href=bmb51toplus.php?action=post>点击这里进入第三步</a><br><br>
如有任何疑问或错误,请立即访问 <a href=http://www.bmforum.com/bmb>官方论坛</a>
<?
}elseif($_GET['action']=="post"){
if($_GET['id']==""){
$i=0;
$dir = "$idpath/";
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
if(filetype($dir . $file)=="file"){
$newdata=iconv("GB2312", "UTF-8", readfromfile("$idpath/".$file));
writetofile("$idpath/".$file,$newdata);
}elseif(filetype($dir . $file)=="dir" && $file!=".." && $file!="."){
$dirlistinfo.="$i|$file|\n";
$i++;
}
}
closedir($dh);
}
}
writetofile("tmpconvert.tmp",$dirlistinfo);
?>
<b>欢迎使用 BMForum 5.1 到 BMForum Plus! 1.0 转换程序</b><br><br>
正在转换论坛版块数据<br>
<br><br><br>
<a href=bmb51toplus.php?action=post&id=0>浏览器将自动跳转,如果没有跳转,请点击这里</a><br><br>
如有任何疑问或错误,请立即访问 <a href=http://www.bmforum.com/bmb>官方论坛</a>
<?
echo "<meta http-equiv=\"Refresh\" content=\"3; URL=bmb51toplus.php?action=post&id=0\">";
}else{
$folderlist=file("tmpconvert.tmp");
$count=count($folderlist);
for($i=0;$i<$count;$i++){
$detail=explode("|",$folderlist[$i]);
if($detail[0]==$_GET['id']){
$dir = "$idpath/{$detail[1]}/";
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
if(filetype($dir . $file)=="file" && $file!="list.php" && $file!="trash.php"){
$newdata=iconv("GB2312", "UTF-8", readfromfile($dir.$file));
writetofile($dir.$file,$newdata);
}elseif($file=="list.php"){
@unlink($dir."$file");
}
}
closedir($dh);
}
}
$nextdetail=explode("|",$folderlist[$i+1]);
if($nextdetail[0]==$_GET['id']+1){
?>
<b>欢迎使用 BMForum 5.1 到 BMForum Plus! 1.0 转换程序</b><br><br>
正在转换论坛版块数据<br>
<br><br><br>
<a href=bmb51toplus.php?action=post&id=<?=$nextdetail[0]?>>浏览器将自动跳转,如果没有跳转,请点击这里</a><br><br>
如有任何疑问或错误,请立即访问 <a href=http://www.bmforum.com/bmb>官方论坛</a>
<?
echo "<meta http-equiv=\"Refresh\" content=\"3; URL=bmb51toplus.php?action=post&id={$nextdetail[0]}\">";
}else{
?>
<b>欢迎使用 BMForum 5.1 到 BMForum Plus! 1.0 转换程序</b><br><br>
帖子数据 目录转换完成<br><font color=red>请注意:在全部转换工作完成之后,请到管理中心的 论坛版块维护 内重建所有版块的索引。</font><bR>
<br>请做好准备迎接最后一步转换 其他数据<br><br>
<a href=bmb51toplus.php?action=others>点击这里进入第四步</a><br><br>
如有任何疑问或错误,请立即访问 <a href=http://www.bmforum.com/bmb>官方论坛</a>
<?
}
break;
}
}
}
}elseif($_GET['action']=="others"){
$dir = "badman/";
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
if(filetype($dir . $file)=="file"){
$newdata=iconv("GB2312", "UTF-8", readfromfile($dir.$file));
writetofile($dir.$file,$newdata);
}
}
closedir($dh);
}
}
$dir = "friend/";
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
if(filetype($dir . $file)=="file"){
$newdata=iconv("GB2312", "UTF-8", readfromfile($dir.$file));
writetofile($dir.$file,$newdata);
}
}
closedir($dh);
}
}
$dir = "favorites/";
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
if(filetype($dir . $file)=="file"){
$newdata=iconv("GB2312", "UTF-8", readfromfile($dir.$file));
writetofile($dir.$file,$newdata);
}
}
closedir($dh);
}
}
?>
<b>欢迎使用 BMForum 5.1 到 BMForum Plus! 1.0 转换程序</b><br><br>
恭喜您,全部转换工作均已完成<br><font color=red>请注意:1.请到管理中心的 论坛版块维护 内重建所有版块的索引。<br>2.请注意检查本文件是否还存在</font><bR>
<br><br>
如有任何疑问或错误,请立即访问 <a href=http://www.bmforum.com/bmb>官方论坛</a>
<?
@unlink("tmpconvert.tmp");
@unlink("bmb51toplus.php");
}
function readfromfile($file_name) {
$filenum=fopen($file_name,"r");
flock($filenum,LOCK_SH);
$file_data=@fread($filenum,@filesize($file_name));
fclose($filenum);
return $file_data;
}
function writetofile($file_name,$data,$method="w") {
$filenum=fopen($file_name,$method);
flock($filenum,LOCK_EX);
$file_data=fwrite($filenum,$data);
fclose($filenum);
return $file_data;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -