From ff67babf5108c30679f7650d37025169ee1558fc Mon Sep 17 00:00:00 2001 From: liyukun <1099438829@qq.com> Date: Thu, 13 Jan 2022 00:15:43 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E5=AE=89=E8=A3=85=E7=A8=8B?= =?UTF-8?q?=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/install/ape_blog.sql | 22 +++---- public/install/css/install.css | 25 ++++---- public/install/images/install/header.png | Bin 7922 -> 0 bytes .../install/images/install/icon_install.png | Bin 699 -> 0 bytes public/install/images/install/logo.png | Bin 4030 -> 34531 bytes public/install/index.php | 54 +++++++++++------- public/install/templates/step3.php | 6 +- 7 files changed, 58 insertions(+), 49 deletions(-) delete mode 100644 public/install/images/install/header.png delete mode 100644 public/install/images/install/icon_install.png diff --git a/public/install/ape_blog.sql b/public/install/ape_blog.sql index e1c8357..da86372 100644 --- a/public/install/ape_blog.sql +++ b/public/install/ape_blog.sql @@ -11,7 +11,7 @@ Target Server Version : 50726 File Encoding : 65001 - Date: 12/01/2022 00:04:30 + Date: 13/01/2022 00:14:49 */ SET NAMES utf8mb4; @@ -295,7 +295,7 @@ CREATE TABLE `ape_document` ( PRIMARY KEY (`id`) USING BTREE, INDEX `idx_category_status`(`category_id`, `status`) USING BTREE, INDEX `idx_status_type_pid`(`status`, `uid`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '文档模型基础表' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '文档模型基础表' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Records of ape_document @@ -309,7 +309,7 @@ CREATE TABLE `ape_document_article` ( `id` int(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT '文档ID', `content` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '文章内容', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '文档模型文章表' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '文档模型文章表' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Records of ape_document_article @@ -337,7 +337,7 @@ CREATE TABLE `ape_document_category` ( `create_time` int(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT '创建时间', `update_time` int(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT '更新时间', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '分类表' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '分类表' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Records of ape_document_category @@ -351,7 +351,7 @@ CREATE TABLE `ape_document_category_content` ( `id` int(11) NOT NULL, `content` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL, PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '分类内容表' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '分类内容表' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Records of ape_document_category_content @@ -370,7 +370,7 @@ CREATE TABLE `ape_document_product` ( `create_time` int(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT '创建时间', `update_time` int(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT '更新时间', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '文档模型文章表' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '文档模型文章表' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Records of ape_document_product @@ -392,7 +392,7 @@ CREATE TABLE `ape_friend_link` ( `update_time` int(10) NOT NULL DEFAULT 0 COMMENT '更新时间', `status` int(10) NOT NULL DEFAULT 1 COMMENT '状态 0禁用', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '友链表' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '友链表' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Records of ape_friend_link @@ -432,7 +432,7 @@ CREATE TABLE `ape_message_form` ( `status` int(10) NOT NULL DEFAULT 1, `create_time` int(10) NOT NULL DEFAULT 0 COMMENT '留言时间', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '反馈意见表' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '反馈意见表' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Records of ape_message_form @@ -580,11 +580,11 @@ DROP TABLE IF EXISTS `ape_user`; CREATE TABLE `ape_user` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', `username` varchar(40) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '用户账号', - `nickname` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '里程密' COMMENT '昵称', + `nickname` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '昵称', `password` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '用户密码', - `avatar` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '用户头像', + `avatar` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '' COMMENT '用户头像', `email` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '邮箱', - `tel` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '手机号', + `tel` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '' COMMENT '手机号', `ip` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '注册IP地址', `status` int(11) NOT NULL DEFAULT 0 COMMENT '状态 0启用 1禁用', `remark` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '简介', diff --git a/public/install/css/install.css b/public/install/css/install.css index 40b99ff..423355d 100644 --- a/public/install/css/install.css +++ b/public/install/css/install.css @@ -226,7 +226,6 @@ a:visited{ box-shadow:0 3px 3px #ddd; position:relative; color:#fff; - background:#246fa6 url(../images/install/header.png) 0 0 repeat-x; } /* =================== @@ -314,18 +313,14 @@ LOGO */ .icon_install, .icon_update{ - float:left; - margin-top:35px; - width:90px; - height:30px; - overflow:hidden; - text-indent:-2000em; -} -.icon_install{ - background:url(../images/install/icon_install.png) no-repeat; -} -.icon_update{ - background:url(../images/install/icon_update.png) no-repeat; + float: left; + margin-top: 40px; + width: 90px; + height: 30px; + overflow: hidden; + font-size: 20px; + color: #050919; + font-weight: bold; } /* @@ -387,7 +382,7 @@ a.btn_old:visited{ width:33%; text-align:center; font-size:14px; - color:#6f7885; + color: #050919; font-weight:700; } .step li em{ @@ -644,7 +639,7 @@ loading } .updata_type .tab li.current a{ background:#fdfdfd; - color:#6F7885; + color: #050919; border-bottom:1px solid #fdfdfd; } .updata_type .tab_cont{ diff --git a/public/install/images/install/header.png b/public/install/images/install/header.png deleted file mode 100644 index cb0ae22baa5b26497988191236bf1bc5dac96bb0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7922 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 diff --git a/public/install/images/install/icon_install.png b/public/install/images/install/icon_install.png deleted file mode 100644 index d0be8756027ef75f8ec24439b00760d67e069884..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 699 zcmV;s0!00ZP)G|G=8+3zuI%A%c8{Hd#lbw zh`Kz3x0AZpgRs$5lE7n}#Y>I7YoW-CwbZN0;4FEum$yeK0000HbW%=J|NsC0|NsC0 z|NsC0|NsC0041%NVgLXF0ZBwbRCwC#mg|n(APj}M6B6L?{!d$*OCZe5u3D+8RIPtZ zLINMg_Hjm(zh>eG{ZG(R?;Gjt>ZJU9VYT~B^a(6OeU*|C`8FY~Yb0>41Pa1WSZHK&Sp?q`(Fe{qDe}uNZ80xQ!#FPeCU&3PzC_#JV z_3)LIy2XiJc1!W-^&={YEkMO-GMXgWeT~pjqN8V4Z}j;%3gnG`&0-Hk5y@*DTLkDO znVo38t<^KuwF*qDf)vOdGB3KXw9Y;w(9WMGx{SFg*=$qXBy)`%W>U)gf*h<@^xN7S zXopU`fVDqJQc+W=a5Eq)+C5a>)TCE57lKNj+sLZvsBmb;Q6=W`HjNc+zCe@TmS%_H zeD8!*ak3l;RN}SmboA&$BOoUZ`7t21AqDp3e&8vywNj|y5&T*qn`Ag_%6)+*eZY`= z>XLmQlMX_kmM*aFvl=VAW#knduV5G@tGxMI0&hWmiJm8p43v#4TGramce-s6S3K2@ zuH9lZCx+X*XTw;Qn%9b}b3yx_%H`WrpZF*G%;}U%tIzWOeoP5FTI722>)D(3*Y?3u h`}wo*pP_#VFaTL{nFlD8A6ozb002ovPDHLkV1n0bQmp_0 diff --git a/public/install/images/install/logo.png b/public/install/images/install/logo.png index f5eb295d57b98df9f4abc9a6c36cd6de59568df8..7b43bf955fa4b0d228d7369268f00df36e506672 100644 GIT binary patch literal 34531 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 delta 3719 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 diff --git a/public/install/index.php b/public/install/index.php index fae5770..7ee0312 100644 --- a/public/install/index.php +++ b/public/install/index.php @@ -193,29 +193,28 @@ switch ($step) { case '4': if (intval($_GET['install'])) { $n = intval($_GET['n']); - if ($i == 999999) - exit; + if ($n == 999999) exit; $arr = array(); $dbHost = trim($_POST['dbhost']); $_POST['dbport'] = $_POST['dbport'] ? $_POST['dbport'] : '3306'; - $dbName = strtolower(trim($_POST['dbname'])); + $dbName = strtolower(trim($_POST['dbname'])); $dbUser = trim($_POST['dbuser']); $dbPwd = trim($_POST['dbpw']); $dbPrefix = empty($_POST['dbprefix']) ? 'ape_' : trim($_POST['dbprefix']); - $username = trim($_POST['manager']); $password = trim($_POST['manager_pwd']); $email = trim($_POST['manager_email']); - + if (!function_exists('mysqli_connect')) { $arr['msg'] = "请安装 mysqli 扩展!"; echo json_encode($arr); exit; } + ; $conn = @mysqli_connect($dbHost, $dbUser, $dbPwd,NULL,$_POST['dbport']); if (mysqli_connect_errno($conn)){ - $arr['msg'] = "连接数据库失败!".mysqli_connect_error($conn); + $arr['msg'] = "连接数据库失败!".mysqli_connect_error($conn); echo json_encode($arr); exit; } @@ -226,7 +225,7 @@ switch ($step) { echo json_encode($arr); exit; } - + if (!mysqli_select_db($conn,$dbName)) { //创建数据时同时设置编码 if (!mysqli_query($conn,"CREATE DATABASE IF NOT EXISTS `" . $dbName . "` DEFAULT CHARACTER SET utf8;")) { @@ -280,18 +279,28 @@ switch ($step) { } // 清理掉管理员表 mysqli_query($conn,"truncate table ".str_replace('ape_',$dbPrefix,'ape_admin')); - // 清空测试数据 + // 清空测试数据 if(!$_POST['demo']) { $bl_table = array('ape_admin' ,'ape_admin_log' ,'ape_admin_notify' - ,'ape_wechat_user' - ,'ape_wechat_message' + ,'ape_advert' + ,'ape_attachment' + ,'ape_attachment_category' + ,'ape_document' + ,'ape_document_article' + ,'ape_document_category' + ,'ape_document_category_content' + ,'ape_document_product' + ,'ape_friend_link' + ,'ape_invitation_code' + ,'ape_message_form' + ,'ape_pv_log' + ,'ape_tag' + ,'ape_url_log' ,'ape_user' - ,'ape_user_bill' - ,'ape_user_message' - ,'ape_user_order'); + ,'ape_uv_log'); foreach($bl_table as $k => $v) { $bl_table[$k] = str_replace('ape_',$dbPrefix,$v); @@ -312,18 +321,23 @@ switch ($step) { $strConfig = str_replace('#DB_PORT#', $_POST['dbport'], $strConfig); $strConfig = str_replace('#DB_PREFIX#', $dbPrefix, $strConfig); $strConfig = str_replace('#DB_CHARSET#', 'utf8', $strConfig); - // $strConfig = str_replace('#DB_DEBUG#', false, $strConfig); + $strConfig = str_replace('#DB_DEBUG#', 'false', $strConfig); @file_put_contents(APP_DIR . '.env', $strConfig); //数据库配置文件的地址 @chmod(APP_DIR . '.env',0777); //数据库配置文件的地址// - //更新网站配置信息2 - //插入管理员表字段tp_admin表 + //插入管理员表字段ape_admin表 $time = time(); $password = md5(md5(trim($_POST['manager_pwd']))); - mysqli_query($conn,"truncate table {$dbPrefix}system_admin"); - $addadminsql = "INSERT INTO `{$dbPrefix}admin` (`id`, `name`, `nickname`, `password`, `role_id`, `status`, `create_time`, `create_user`) VALUES -(1, '".$username."', 'admin' ,'".$password."', 1, 1, $time, '1')"; - $res = mysqli_query($conn,$addadminsql); + // 清理掉管理员表和用户表 + mysqli_query($conn,"truncate table {$dbPrefix}admin"); + mysqli_query($conn,"truncate table {$dbPrefix}user"); + $addAdminSql = "INSERT INTO `{$dbPrefix}admin` (`id`, `uid`,`username`, `nickname`, `password`, `role_id`, `status`, `create_time`, `create_user`) VALUES". + "(1, 1,'".$username."', 'admin' ,'".$password."', 1, 1, $time, '1')"; + $addUserSql = "INSERT INTO `{$dbPrefix}user` (`id`, `username`, `nickname`, `password`, `status`, `is_admin`, `create_time`) VALUES ". + "(1,'".$username."', 'admin' ,'".$password."', 1, 1, $time);"; + //插入前台用户和管理员 + mysqli_query($conn,$addUserSql); + $res = mysqli_query($conn,$addAdminSql); if($res){ $message = '成功添加管理员
成功写入配置文件
安装完成.'; $arr = array('n' => 999999, 'msg' => $message); diff --git a/public/install/templates/step3.php b/public/install/templates/step3.php index bc181e9..7f16e81 100644 --- a/public/install/templates/step3.php +++ b/public/install/templates/step3.php @@ -47,13 +47,13 @@ 数据库名: - +
数据库表前缀: - -
建议使用默认,同一数据库安装多个pai-admin时需修改
+ +
建议使用默认,同一数据库安装多个ape_blog时需修改
演示数据: