|
|
@@ -20,20 +20,17 @@ if (empty($dopost)) { |
|
|
|
$wecome_info = "<a href='index_body.php'>系统主页</a> > 系统错误修复工具"; |
|
|
|
$win->AddTitle('本工具用于检测和修复您的系统可能存在的错误'); |
|
|
|
$msg = " |
|
|
|
<table width='98%' cellspacing='0' cellpadding='0' align='center'> |
|
|
|
<tr> |
|
|
|
<td height='250' valign='top'> |
|
|
|
<br> |
|
|
|
由于手动升级时用户没运行指定的SQL语句,或自动升级的遗漏处理或处理出错,可能会导致一些错误,使用本工具会自动检测并处理<br><br> |
|
|
|
<table> |
|
|
|
<tr> |
|
|
|
<td> |
|
|
|
由于手动升级时用户没运行指定的SQL语句,或自动升级的遗漏处理或处理出错,可能会导致一些错误,使用本工具会自动检测并处理<br> |
|
|
|
本工具目前主要执行下面动作:<br> |
|
|
|
1、修复/优化数据表;<br> |
|
|
|
2、更新系统缓存;<br> |
|
|
|
3、检测系统变量一致性<br> |
|
|
|
4、检测微表与主表数据一致性<br> |
|
|
|
<br> |
|
|
|
<br> |
|
|
|
<a href='sys_repair.php?dopost=1' class='btn btn-danger'>常规检测</a> |
|
|
|
<br><br><br> |
|
|
|
</td> |
|
|
|
</tr> |
|
|
|
</table> |
|
|
@@ -54,11 +51,10 @@ else if ($dopost == 1) { |
|
|
|
$wecome_info = "<a href='sys_repair.php'>系统错误修复工具</a> > 检测数据结构"; |
|
|
|
$win->AddTitle('本工具用于检测和修复您的系统可能存在的错误'); |
|
|
|
$msg = " |
|
|
|
<table width='98%' cellspacing='0' cellpadding='0' align='center'> |
|
|
|
<tr> |
|
|
|
<td height='250' valign='top'> |
|
|
|
<table> |
|
|
|
<tr> |
|
|
|
<td> |
|
|
|
<span style='color:#28a745'>已完成数据结构完整性检测</span> |
|
|
|
<hr size='1'/> |
|
|
|
<br> |
|
|
|
如果您系统有下面几种问题之一,请检测微表正确性:<br> |
|
|
|
1、无法获得主键,因此无法进行后续操作<br> |
|
|
@@ -66,7 +62,6 @@ else if ($dopost == 1) { |
|
|
|
3、列表显示数据目与实际文档数不一致<br> |
|
|
|
<br> |
|
|
|
<a href='sys_repair.php?dopost=2' class='btn btn-danger'>检测数据</a> |
|
|
|
<br><br><br> |
|
|
|
</td> |
|
|
|
</tr> |
|
|
|
</table> |
|
|
@@ -82,12 +77,10 @@ function 2_test_arctiny() { } |
|
|
|
--------------------*/ |
|
|
|
else if ($dopost == 2) { |
|
|
|
$msg = ''; |
|
|
|
|
|
|
|
$allarcnum = 0; |
|
|
|
$row = $dsql->GetOne("SELECT COUNT(*) AS dd FROM `#@__archives` "); |
|
|
|
$allarcnum = $arcnum = $row['dd']; |
|
|
|
$msg .= "·#@__archives 表总记录数:{$arcnum} <br>"; |
|
|
|
|
|
|
|
$msg .= "#@__archives 表总记录数:{$arcnum} <br>"; |
|
|
|
$shtables = array(); |
|
|
|
$dsql->Execute('me', " SELECT addtable FROM `#@__channeltype` WHERE id < -1 "); |
|
|
|
while ($row = $dsql->GetArray('me')) { |
|
|
@@ -103,12 +96,12 @@ else if ($dopost == 2) { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
$msg .= "※总有效记录数:{$allarcnum} <br> "; |
|
|
|
$msg .= "总有效记录数:{$allarcnum} <br> "; |
|
|
|
$errall = "<a href='index_body.php' class='btn btn-success btn-sm'>完成修正</a>"; |
|
|
|
$row = $dsql->GetOne("SELECT COUNT(*) AS dd FROM `#@__arctiny` "); |
|
|
|
$msg .= "※微统计表记录数:{$row['dd']}<br>"; |
|
|
|
$msg .= "微统计表记录数:{$row['dd']}<br>"; |
|
|
|
if ($row['dd'] == $allarcnum) { |
|
|
|
$msg .= "<p style='color:green'>两者记录一致,无需修正</p><br>"; |
|
|
|
$msg .= "<span style='color:#28a745'>两者记录一致,无需修正</span><br>"; |
|
|
|
} else { |
|
|
|
$sql = " TRUNCATE TABLE `#@__arctiny`"; |
|
|
|
$dsql->ExecuteNoneQuery($sql); |
|
|
@@ -126,10 +119,10 @@ else if ($dopost == 2) { |
|
|
|
} |
|
|
|
$row = $dsql->GetOne("SELECT COUNT(*) AS dd FROM `#@__arctiny` "); |
|
|
|
if ($row['dd'] == $allarcnum) { |
|
|
|
$msg .= "<p style='color:green>修正记录成功</p><br>"; |
|
|
|
$msg .= "<span style='color:#28a745'>修正记录成功</span><br>"; |
|
|
|
} else { |
|
|
|
$msg .= "<p style='color:#dc3545'>修正记录失败,建议进行高级综合检测</p><br>"; |
|
|
|
$errall = " <a href='sys_repair.php?dopost=3' class='btn btn-danger'>结合性检测</a> "; |
|
|
|
$msg .= "<span style='color:#dc3545'>修正记录失败,建议进行高级综合检测</span><br>"; |
|
|
|
$errall = "<a href='sys_repair.php?dopost=3' class='btn btn-danger'>结合性检测</a> "; |
|
|
|
} |
|
|
|
} |
|
|
|
UpDateCatCache(); |
|
|
@@ -139,11 +132,10 @@ else if ($dopost == 2) { |
|
|
|
$wecome_info = "<a href='sys_repair.php'>系统错误修复工具</a> > 检测微表正确性"; |
|
|
|
$win->AddTitle('本工具用于检测和修复您的系统可能存在的错误'); |
|
|
|
$msg = " |
|
|
|
<table width='98%' cellspacing='0' cellpadding='0' align='center'> |
|
|
|
<tr> |
|
|
|
<td height='250' valign='top'> |
|
|
|
<table> |
|
|
|
<tr> |
|
|
|
<td> |
|
|
|
{$msg} |
|
|
|
<hr /> |
|
|
|
<br> |
|
|
|
{$errall} |
|
|
|
</td> |
|
|
@@ -163,14 +155,11 @@ else if ($dopost == 3) { |
|
|
|
$errnum = 0; |
|
|
|
$sql = " TRUNCATE TABLE `#@__arctiny`"; |
|
|
|
$dsql->ExecuteNoneQuery($sql); |
|
|
|
|
|
|
|
$sql = "SELECT arc.id, arc.typeid, arc.typeid2, arc.arcrank, arc.channel, arc.senddate, arc.sortrank, |
|
|
|
arc.mid, ch.addtable FROM `#@__archives` arc LEFT JOIN `#@__channeltype` ch ON ch.id=arc.channel "; |
|
|
|
$sql = "SELECT arc.id, arc.typeid, arc.typeid2, arc.arcrank, arc.channel, arc.senddate, arc.sortrank, arc.mid, ch.addtable FROM `#@__archives` arc LEFT JOIN `#@__channeltype` ch ON ch.id=arc.channel "; |
|
|
|
$dsql->Execute('me', $sql); |
|
|
|
while ($row = $dsql->GetArray('me')) { |
|
|
|
$sql = "INSERT INTO `#@__arctiny`(id, typeid, typeid2, arcrank, channel, senddate, sortrank, mid) |
|
|
|
VALUES('{$row['id']}','{$row['typeid']}','{$row['typeid2']}','{$row['arcrank']}', |
|
|
|
'{$row['channel']}','{$row['senddate']}','{$row['sortrank']}','{$row['mid']}'); "; |
|
|
|
VALUES('{$row['id']}','{$row['typeid']}','{$row['typeid2']}','{$row['arcrank']}', '{$row['channel']}','{$row['senddate']}','{$row['sortrank']}','{$row['mid']}'); "; |
|
|
|
$rs = $dsql->ExecuteNoneQuery($sql); |
|
|
|
if (!$rs) { |
|
|
|
$addtable = trim($addtable); |
|
|
@@ -189,7 +178,7 @@ else if ($dopost == 3) { |
|
|
|
continue; |
|
|
|
} else { |
|
|
|
$sql = "INSERT INTO `#@__arctiny`(id, typeid, typeid2, arcrank, channel, senddate, sortrank, mid) |
|
|
|
SELECT aid, typeid, 0, arcrank, channel, senddate, 0, mid FROM `$tb` "; |
|
|
|
SELECT aid, typeid, 0, arcrank, channel, senddate, 0, mid FROM `$tb` "; |
|
|
|
$rs = $dsql->ExecuteNoneQuery($sql); |
|
|
|
$doarray[$tb] = 1; |
|
|
|
} |
|
|
@@ -200,11 +189,10 @@ else if ($dopost == 3) { |
|
|
|
$wecome_info = "<a href='sys_repair.php'>系统错误修复工具</a> > 高级综合检测修复"; |
|
|
|
$win->AddTitle('本工具用于检测和修复您的系统可能存在的错误'); |
|
|
|
$msg = " |
|
|
|
<table width='98%' cellspacing='0' cellpadding='0' align='center'> |
|
|
|
<tr> |
|
|
|
<td height='250' valign='top'> |
|
|
|
<table> |
|
|
|
<tr> |
|
|
|
<td> |
|
|
|
完成所有修复操作,移除错误记录 {$errnum} 条 |
|
|
|
<hr /> |
|
|
|
<br> |
|
|
|
<a href='index_body.php' class='btn btn-success btn-sm'>完成修正</a> |
|
|
|
</td> |
|
|
|