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

📄 zero40to3x.php

📁 php写的论坛,代码精简到极点 请相看说明文件。是从英文翻译过来的:)
💻 PHP
字号:
<?
//////////////////////////////////ready
include "connect.php";
include "lib.php";
include "header.inc";

//////////////////////////////////check
chk_level(1,0,"login.php?go=root.php");
chk_memo();

if(!$path20){$path20="../";}

$result = mysql_list_tables ("$connect_db");
$i=0;
$j=0;
while ($i < mysql_num_rows ($result)) {
$tb_names[$i] = mysql_tablename ($result, $i);

if(eregi("zetyx_board_",$tb_names[$i]) && !eregi("zetyx_board_comment",$tb_names[$i]) && !eregi("zetyx_board_category",$tb_names[$i]))
{
$tb_names[$i] = str_replace( "zetyx_board_", "",$tb_names[$i] ); 
$tables[$j] = $tb_names[$i];
$j++;
}
$i++;
}
?>

<script language=javascript>
function input_state(str){
convert.state.value=str;
}
function input_process(str){
convert.process.value=str;
}
function input_per(str){
convert.per.value=str;
}
function input_block(block_width){
document.block.width=block_width;
}
</script>

<link rel=StyleSheet HREF=style.css type=text/css title=style>
<table width=100%><tr><td valign=top><br><br>

<table align=center width=450 cellpadding=2 cellspacing=0 border=0 bgcolor=white>
<tr><td colspan=2 bgcolor=white><img src=image/logo.gif><br><br></td></tr>

<tr><td colspan=2 bgcolor=white>
<table width=100% cellpadding=0 cellspacing=0>
<tr>
<td><font color=#008CD6 size=4><b>&nbsp;<a href=root.php>ROOT</a>>n@board Converter</b></font></td>
<td align=right><?=$logout?> <?=$help?>&nbsp;<?=$memo_list?></td>
</tr></table>
</td></tr>
<tr><td colspan=2 height=3 bgcolor=#2CBBFF></td></tr>
<tr><td colspan=2 height=5></td></tr>

<form method=post action=<?echo $PHP_SELF;?> name=convert>
<input type=hidden name=check_submit value=1>
<tr>
<td style="padding:2;"><font size=3><b>zero4 to n@board 3.x</b></font></td>
<td align=right><font size=2><b>> <a href=naboard20to3x.php>n@board 2.x to 3.x converter</a></b></font></td>
</tr>
<tr><td style="padding:2;" colspan=2><br>
This program is converting program. That will convert zeroboard 4 to n@board 3.x version.<br>
Even if converting, table of zeroboard 4 is kept just as it is.
<br><br>
First input your zeroboard 4 relative path, <br>
and then selet zeroboard version board to convert <br>
lastly, make your new 3.x version board name, And, then, Click Converting button<br><br>

<tr><td colspan=2 style="padding:2;"><input type=text size=20 name=path20 value='<?=$path20?>' class=input> zeroboard 4 relative path (ex: ../zboard)<br>if same path, input ./</td></tr>
<tr><td colspan=2 style="padding:2;"><select name=from>
<?
$table_count=count($tables);
for($i=0;$i<$table_count;$i++){

if($bd==$tables[$i]){$selected="selected";}
else{$selected="";}

echo "<option value='$tables[$i]'>$tables[$i]</option>";
}
?>
</select> zeroboard 4 board to convert</td></tr>
<tr><td colspan=2 style="padding:2;"><input type=text size=10 name=to class=input>  n@board 3.x board name to make</td></tr>
<tr><td colspan=2 style="padding:2;"><input type=submit value=Converting class=input><br><br></td></tr>
<tr><td colspan=2 style="padding:2;"><input type=text readonly name=state value="input converting info" size=60 class=input2> < state</td></tr>
<tr><td colspan=2 style="padding:2;"><input type=text readonly name=process value="Is not working" size=60 class=input2> < process</td></tr>
<tr><td colspan=2 style="padding:2;"><img src=image/block.gif width=320 height=12 name=block align=absmiddle> < <input type=text readonly name=per value="0" size=3 class=input2>%</td></tr>
<tr><td colspan=2 height=5></td></tr></form>
<tr><td colspan=2 height=3 bgcolor=#2CBBFF></td></tr>
<tr><td colspan=2 bgcolor=white><?=$copyright?></td></tr>
</table>
</td></tr></table>

<?
if(!$path20){$path20="../";}


if($check_submit){


if(!$path20){error($error.'input relative path of zeroboard 4');}
if(!$to){error($error.'input an any of named board to make n@board 3.x');}
$path20=eregi_replace("/$","",$path20);
$fp = @fopen("${path20}/zboard.php", "r");
if(!$fp){error($error.'incorrect relative path of zeroboard 4\\n Input again after confirmation');}

$new_board=trim($to);
chk_word($new_board,"&");
$tables=list_bd();
$total=count($tables);
for($i=0;$i<$total;$i++){
$board_name=str_replace("$board_table","",$tables[$i]);
if($board_name==$new_board){error($error.'existing board name');}
}


echo"<script>input_state('start converting. $from TO $to');</script>";
echo"<script>input_process('is making table.');</script>";
echo"<script>input_block(0);</script>";

$t=bd($new_board);
include"naboard_schema.php";
$input="delete from $cat_table$to";
mysql_query($input,$connect);
flush(stdout); 
usleep(50000);

echo"<script>input_block(320);</script>";
echo"<script>input_per(100);</script>";
echo"<script>input_process('completed table making.');</script>";
echo"<script>input_process('is inputting category.');</script>";
echo"<script>input_block(0);</script>";
$total=total("zetyx_board_category_$from","");$i=1;

$query="select * from zetyx_board_category_$from order by no";
$result=mysql_query($query,$connect);
while($data=mysql_fetch_array($result))
{
$input="insert into $cat_table$to (no,name) values ('$data[no]','$data[name]')";
mysql_query($input,$connect);

$width=round(($i/$total)*320);
$per=round(($i/$total)*100);
echo"<script>input_block($width);</script>";
echo"<script>input_per($per);</script>";

flush(stdout); 
usleep(50000);
$i++;
}
flush(stdout); 
usleep(50000);

echo"<script>input_block(320);</script>";
echo"<script>input_per(100);</script>";
echo"<script>input_process('completed category input.');</script>";
echo"<script>input_process('is inputting comment.');</script>";
echo"<script>input_block(0);</script>";
$total=total("zetyx_board_comment_$from","");$i=1;


$query="select * from zetyx_board_comment_$from";
$result=mysql_query($query,$connect);
while($data=mysql_fetch_array($result))
{
$input="insert into $com_table$to (no,name,memo,pass,date) values ('$data[parent]','$data[name]','$data[memo]','$data[password]','$data[reg_date]')";
mysql_query($input,$connect);

$width=round(($i/$total)*320);
$per=round(($i/$total)*100);
echo"<script>input_block($width);</script>";
echo"<script>input_per($per);</script>";


flush(stdout); 
usleep(50000);
$i++;
}
flush(stdout); 
usleep(50000);

echo"<script>input_block(320);</script>";
echo"<script>input_per(100);</script>";
echo"<script>input_process('completed comment input.');</script>";
echo"<script>input_process('is inputting article.');</script>";
echo"<script>input_block(0);</script>";
$total=total("zetyx_board_$from","");$i=1;

$query="select * from zetyx_board_$from order by no";
$result=mysql_query($query,$connect);
while($data=mysql_fetch_array($result))
{
echo"<script>input_process('is inputting article.');</script>";

$attach_dir=time()."a".(double)microtime();
$attach2_dir=time()."b".(double)microtime();

$data[attach_dir]=str_replace("/$data[s_file_name1]","",$data[file_name1]);
$data[attach_dir]=str_replace("data/","",$data[attach_dir]);
$data[attach2_dir]=str_replace("/$data[s_file_name2]","",$data[file_name2]);
$data[attach2_dir]=str_replace("data/","",$data[attach2_dir]);

if($data[file_name1]){$file_size1=filesize("$path20/$data[file_name1]");}
if($data[file_name2]){$file_size2=filesize("$path20/$data[file_name2]");}

$input="insert into $board_table$to values (
'$data[no]',
'',
'$data[name]',
'$data[memo]',
'$data[homepage]',
'$data[email]',
'$data[subject]',
'$data[reg_date]',
'$data[hit]',
'$data[password]',
'$data[ip]',
'$data[category]',
'$data[headnum]',
'$data[arrangenum]',
'-$data[depth]',
'$data[is_secret]',
'$data[use_html]',
'$data[reply_mail]',

'$data[s_file_name1]',
'$file_size1',
'$attach_dir',
'$data[download1]',

'$data[s_file_name2]',
'$file_size2',
'$attach2_dir',
'$data[download1]',

'$data[sitelink1]',
'',
'$data[sitelink2]',
'',
'',
''
)";
mysql_query($input,$connect);

$width=round(($i/$total)*320);
$per=round(($i/$total)*100);
echo"<script>input_block($width);</script>";
echo"<script>input_per($per);</script>";

if($data[s_file_name1]){
echo"<script>input_process('is copying appending file 1.');</script>";

@mkdir("file/$attach_dir",0777);
@copy("$path20/$data[file_name1]","file/$attach_dir/$data[s_file_name1]");
}
if($data[s_file_name2]){
echo"<script>input_process('is copying appending file 2.');</script>";

@mkdir("file/$attach2_dir",0777);
@copy("$path20/$data[file_name2]","file/$attach2_dir/$data[s_file_name2]");
}
flush(stdout); 
usleep(50000);
$i++;
}
flush(stdout); 
usleep(50000);


echo"<script>input_state('completed converting $from TO $to');</script>";
echo"<script>input_process('');</script>";

}//check

mysql_close($connect);
?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -