📄 wdb2lbt.cgi
字号:
#!/usr/bin/perl
#####################################################
# WDB 用户资料转换器,LB5000 II 用户的福音!
# 程序编制: 山鹰糊 webmaster@cgier.com
# 版权所有: CGI 编程者之家 http://www.CGIer.com
######################################################
$wdbdir = "/path/to/WDB main dir/"; # 请输入WDB 主资料所在的目录的绝对路径,最后不要遗漏 / 。
$lb5000dir = "/path/to/LB5000 main dir/"; # 请输入 LB5000 主资料所在的目录的绝对路径,最后不要遗漏 / ,注意设置好 777 属性。
opendir (DIRS, "$wdbdir");
my @dirs1 = readdir(DIRS);
closedir (DIRS);
my @dirs1 = grep(/^forum/i, @dirs1);
$dir2 = @dirs1;
foreach $dirs1 (@dirs1) {
if ($dirs1 !~ /forum[0-9]+$/) { $dir2--; next;}
mkdir ("$lb5000dir/$dirs1", 0777);
chmod (0777,"$lb5000dir/$dirs1");
opendir (DIRS, "${wdbdir}$dirs1");
my @files = readdir(DIRS);
closedir (DIRS);
@files = grep(/^f\_/i, @files);
$a = 1;
foreach $files1 (@files) {
open (FILE, "${wdbdir}${dirs1}/$files1");
@allthreads = <FILE>;
close (FILE);
open (FILE, ">${lb5000dir}${dirs1}/$a.thd.cgi");
foreach $thread (@allthreads) {
($topictitle,$membername,$post,$postdate,$postipaddresstemp,$posticon,$showsignature) = split (/\|/,$thread);
if ($showsignature eq 1) { $showsignature = "yes"; } else { $showsignature = "no"; }
if ($posticon eq "ran") { $posticon = ""; }
print FILE "$membername\t*#!&*$topictitle\t$postipaddresstemp=$postipaddresstemp\tyes\t$showsignature\t$postdate\t$post\t$posticon\t\n";
}
close (FILE);
$a++;
}
}
$dir1 = @dirs1;
print "Content-type: text/html\n\n";
print "OK,一切 OK 啦!总共转换了 $dir2 个分论坛!<BR><BR>请立即进入管理区,修复论坛主界面,并对重建所有论坛一次\n";
print "程序编制:<a href=\"mailto:webmaster\@cgier.com\">山鹰(糊)</a><BR>";
print "版权所有:<a href=\"http://www.cgier.com/\">CGI 编程者之家</a>";
exit;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -