This commit is contained in:
toogee 2020-01-15 10:52:57 +08:00
parent aed57f3e97
commit e97bc4d61a
9 changed files with 170 additions and 234 deletions

View File

@ -15,6 +15,9 @@ class Index extends BaseController
{ {
public function index() public function index()
{ {
if(!is_file('../install.lock')){
return redirect('/install/index/index');
}
$types = input('type'); $types = input('type');
//幻灯 //幻灯
$sliders = Db::name('slider')->where('slid_status',1)->where('delete_time',0)->where('slid_type',1)->whereTime('slid_over','>=',time())->select(); $sliders = Db::name('slider')->where('slid_status',1)->where('delete_time',0)->where('slid_type',1)->whereTime('slid_over','>=',time())->select();

View File

@ -6,7 +6,7 @@ return [
// 数据库类型 // 数据库类型
'type' => 'mysql', 'type' => 'mysql',
// 服务器地址 // 服务器地址
'hostname' => '127.0.0.1', 'hostname' => '',
// 数据库名 // 数据库名
'database' => '', 'database' => '',
// 用户名 // 用户名
@ -14,13 +14,11 @@ return [
// 密码 // 密码
'password' => '', 'password' => '',
// 端口 // 端口
'hostport' => '3306', 'hostport' => '',
// 数据库连接参数
'params' => [],
// 数据库编码默认采用utf8 // 数据库编码默认采用utf8
'charset' => 'utf8', 'charset' => 'utf8',
// 数据库表前缀 // 数据库表前缀
'prefix' => 'tao_', 'prefix' => '',
], ],
], ],
]; ];

View File

@ -23,36 +23,36 @@ class Index extends BaseController
//安装首页 //安装首页
public function index() public function index()
{ {
Session::set('agre',true); Session::set('install',1);
return View::fetch('agreement'); return View::fetch('agreement');
} }
//test //test
public function test() public function test()
{ {
if(Session::pull('agre')){ if(Session::get('install') == 1){
Session::set('cre',true); Session::set('install',2);
return View::fetch('test'); return View::fetch('test');
} else { } else {
return 'error,请返回安装!'; return redirect('./index.html');
} }
} }
//test //test
public function create(){ public function create(){
if(Session::pull('cre')){ if(Session::get('install') == 2){
Session::set('suc',true); Session::set('install',3);
return View::fetch('create'); return View::fetch('create');
} else { } else {
return 'error,请返回安装!'; return redirect('./test.html');
} }
} }
// 安装成功页面 // 安装成功页面
public function complete(){ public function complete(){
if(Session::has('suc') != 'true'){ if(Session::get('install') != 3){
return 'error,请返回安装!'; return redirect('./create.html');
} }
// 判断是否为post // 判断是否为post
@ -72,8 +72,8 @@ class Index extends BaseController
} }
$_SESSION['adminusername'] = $data['admin_user']; $_SESSION['adminusername'] = $data['admin_user'];
// 生成管理员 $email = $data['admin_email'];
$username = $data['admin_user']; $user = $data['admin_user'];
$create_time = time(); $create_time = time();
$salt = substr(md5($create_time),-6); $salt = substr(md5($create_time),-6);
$pass = md5(substr_replace(md5($data['admin_pass']),$salt,0,6)); $pass = md5(substr_replace(md5($data['admin_pass']),$salt,0,6));
@ -100,8 +100,6 @@ return [
'password' => '{$data['DB_PWD']}', 'password' => '{$data['DB_PWD']}',
// 端口 // 端口
'hostport' => '{$data['DB_PORT']}', 'hostport' => '{$data['DB_PORT']}',
// 数据库连接参数
'params' => [],
// 数据库编码默认采用utf8 // 数据库编码默认采用utf8
'charset' => 'utf8', 'charset' => 'utf8',
// 数据库表前缀 // 数据库表前缀
@ -116,25 +114,21 @@ php;
fputs($fp, $db_s); fputs($fp, $db_s);
fclose($fp); fclose($fp);
$db = Db::connect('mysql'); $db = Db::connect('mysql');
//var_dump($db);
$sql = 'CREATE DATABASE IF NOT EXISTS '.$data['DB_NAME'].' DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci'; //$sql = 'CREATE DATABASE IF NOT EXISTS '.$data['DB_NAME'].' DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci';
//$db->execute($sql); //$db->execute($sql);
//创建数据表 //创建数据表
create_tables($db, $data['DB_PREFIX']); create_tables($db, $data['DB_PREFIX']);
//管理员
$table_admin = $data['DB_PREFIX'] . "admin"; $table_admin = $data['DB_PREFIX'] . "admin";
$table_user = $data['DB_PREFIX'] . "user"; $table_user = $data['DB_PREFIX'] . "user";
$table_system = $data['DB_PREFIX'] . "system"; $table_system = $data['DB_PREFIX'] . "system";
$sql_admin = "UPDATE $table_admin SET username = '{$username}', password = '{$pass}', status=1,create_time = '{$create_time}' WHERE id = 1";
$sql_user = "UPDATE $table_user SET name = '{$username}', password = '{$pass}', status=1, auth=1, create_time = '{$create_time}' WHERE id = 1"; $res_a = Db::table($table_admin)->where('id',1)->update(['username'=>$user,'email'=>$email,'password'=>$pass,'status'=>1,'auth_group_id'=>1,'create_time'=>$create_time]);
$sql_syste = "UPDATE $table_system SET create_time = '{$create_time}' WHERE id = 1"; $res_u = Db::table($table_user)->where('id',1)->update(['name'=>$user,'email'=>$email,'password'=>$pass,'auth'=>1,'status'=>1,'create_time'=>$create_time]);
$db->execute($sql_admin); $res_s = Db::table($table_system)->where('id',1)->update(['webname'=>$data['webname'],'webtitle'=>$data['webtitle'],'domain'=>Request::domain(),'create_time'=>time()]);
$db->execute($sql_user);
$db->execute($sql_syste);
Db::getConnection()->close(); Db::getConnection()->close();
} }
@ -194,11 +188,10 @@ return [
]; ];
php; php;
// 创建数据库链接配置文件 // 创建数据库链接配置文件
$fp = fopen('../config/database.php', "r+b"); $fp = fopen('../config/database.php', "r+b");
fwrite($fp, $db_str); fwrite($fp, $db_str);
fclose($fp); fclose($fp);
//安装上锁
file_put_contents('../install.lock', 'lock'); file_put_contents('../install.lock', 'lock');
Session::clear(); Session::clear();
return View::fetch('complete'); return View::fetch('complete');

File diff suppressed because one or more lines are too long

View File

@ -22,13 +22,13 @@ return [
// 密码 // 密码
'password' => '', 'password' => '',
// 端口 // 端口
'hostport' => '3306', 'hostport' => '',
// 数据库连接参数 // 数据库连接参数
'params' => [], 'params' => [],
// 数据库编码默认采用utf8 // 数据库编码默认采用utf8
'charset' => 'utf8', 'charset' => 'utf8',
// 数据库表前缀 // 数据库表前缀
'prefix' => 'tao_', 'prefix' => '',
// 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器) // 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)
'deploy' => 0, 'deploy' => 0,
// 数据库读写是否分离 主从式有效 // 数据库读写是否分离 主从式有效

View File

@ -125,7 +125,8 @@ layui.define(['form', 'upload'], function(exports){
//提交修改 //提交修改
admin.req({ admin.req({
url: '/admin/admin/info' type: 'post'
,url: '/admin/admin/info'
,data: obj.field ,data: obj.field
,success: function(res){ ,success: function(res){
if(res.code == 0){ if(res.code == 0){

View File

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

View File

@ -38,7 +38,7 @@
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">邮箱登入密码</label> <label class="layui-form-label">邮箱登入密码</label>
<div class="layui-input-inline"> <div class="layui-input-inline">
<input type="password" name="send_nickname" value="{$mailserver.password}" autocomplete="off" class="layui-input"> <input type="password" name="password" value="{$mailserver.password}" autocomplete="off" class="layui-input">
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">

View File

@ -45,12 +45,31 @@
<input type="text" name="DB_PREFIX" value="tao_" required lay-verify="required" autocomplete="off" class="layui-input"> <input type="text" name="DB_PREFIX" value="tao_" required lay-verify="required" autocomplete="off" class="layui-input">
</div> </div>
</div> </div>
<h2>管理员账号</h2> <h2>网站信息</h2>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">后台管理用户名</label> <label class="layui-form-label">网站名称</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="text" name="admin_user" placeholder="至少包含4个字符需以字母开头" required lay-verify="required" autocomplete="off" class="layui-input"> <input type="text" name="webname" placeholder="请输入网站名称" required lay-verify="required" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">副标题</label>
<div class="layui-input-block">
<input type="text" name="webtitle" placeholder="请输入网站副标题" required lay-verify="required" autocomplete="off" class="layui-input">
</div>
</div>
<h2>管理员账号:</h2>
<div class="layui-form-item">
<label class="layui-form-label">后台管理员</label>
<div class="layui-input-block">
<input type="text" name="admin_user" placeholder="至少4字符" required lay-verify="required" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">后台管理员邮箱</label>
<div class="layui-input-block">
<input type="text" name="admin_email" placeholder="请输入正确邮箱" required lay-verify="email" autocomplete="off" class="layui-input">
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">