From bed45d0f866e937b961ce8045c7b4a9ae927923f Mon Sep 17 00:00:00 2001 From: xushubieli Date: Fri, 22 Apr 2022 18:30:07 +0800 Subject: [PATCH] Update sys_repair.php --- src/admin/sys_repair.php | 58 ++++++++++++++++------------------------ 1 file changed, 23 insertions(+), 35 deletions(-) diff --git a/src/admin/sys_repair.php b/src/admin/sys_repair.php index 5850f5fa..b5b88284 100644 --- a/src/admin/sys_repair.php +++ b/src/admin/sys_repair.php @@ -20,20 +20,17 @@ if (empty($dopost)) { $wecome_info = "系统主页 > 系统错误修复工具"; $win->AddTitle('本工具用于检测和修复您的系统可能存在的错误'); $msg = " - - -
-
- 由于手动升级时用户没运行指定的SQL语句,或自动升级的遗漏处理或处理出错,可能会导致一些错误,使用本工具会自动检测并处理

+ + +
+ 由于手动升级时用户没运行指定的SQL语句,或自动升级的遗漏处理或处理出错,可能会导致一些错误,使用本工具会自动检测并处理
本工具目前主要执行下面动作:
1、修复/优化数据表;
2、更新系统缓存;
3、检测系统变量一致性
4、检测微表与主表数据一致性

-
常规检测 -


@@ -54,11 +51,10 @@ else if ($dopost == 1) { $wecome_info = "系统错误修复工具 > 检测数据结构"; $win->AddTitle('本工具用于检测和修复您的系统可能存在的错误'); $msg = " - - -
+ + +
已完成数据结构完整性检测 -

如果您系统有下面几种问题之一,请检测微表正确性:
1、无法获得主键,因此无法进行后续操作
@@ -66,7 +62,6 @@ else if ($dopost == 1) { 3、列表显示数据目与实际文档数不一致

检测数据 -


@@ -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}
"; - + $msg .= "#@__archives 表总记录数:{$arcnum}
"; $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}
"; + $msg .= "总有效记录数:{$allarcnum}
"; $errall = "完成修正"; $row = $dsql->GetOne("SELECT COUNT(*) AS dd FROM `#@__arctiny` "); - $msg .= "※微统计表记录数:{$row['dd']}
"; + $msg .= "微统计表记录数:{$row['dd']}
"; if ($row['dd'] == $allarcnum) { - $msg .= "

两者记录一致,无需修正


"; + $msg .= "两者记录一致,无需修正
"; } 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 .= "

修正记录成功
"; } else { - $msg .= "

修正记录失败,建议进行高级综合检测


"; - $errall = " 结合性检测 "; + $msg .= "修正记录失败,建议进行高级综合检测
"; + $errall = "结合性检测 "; } } UpDateCatCache(); @@ -139,11 +132,10 @@ else if ($dopost == 2) { $wecome_info = "系统错误修复工具 > 检测微表正确性"; $win->AddTitle('本工具用于检测和修复您的系统可能存在的错误'); $msg = " - - -
+ + + @@ -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 = "系统错误修复工具 > 高级综合检测修复"; $win->AddTitle('本工具用于检测和修复您的系统可能存在的错误'); $msg = " -
{$msg} -

{$errall}
- -
+ + +
完成所有修复操作,移除错误记录 {$errnum} 条 -

完成修正