⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bmb51toplus.php

📁 bmb的论坛
💻 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 + -