official_website/install_foxcmsvtqp/step/step4.php

395 lines
17 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="cn">
<?php include "head.html"?>
<body>
<div class="install-container step4-container">
<?php include "header.html"?>
<main>
<div class="step-content">
<div class="step-head">
<div class="progress-text">
<div class="step active">
<h3>许可协议</h3>
<div class="circle"></div>
</div>
<div class="step active">
<h3>环境检测</h3>
<div class="circle"></div>
</div>
<div class="step active">
<h3>参数配置</h3>
<div class="circle"></div>
</div>
<div class="step">
<h3>安装完成</h3>
<div class="circle"></div>
</div>
</div>
<div>
<div class="foxui-progress foxui-progress-type__line" data-foxid="foxid3985">
<div class="foxui-progress-line">
<div class="foxui-progress-line__outer" style="height:12px;">
<div class="foxui-progress-line__inner foxui-progress-line__striped foxui-progress-line__animated" style="width:66.66%; ">
</div>
</div>
</div>
</div>
</div>
</div>
<div class="step-main step-main-multiple">
<div class="panel">
<div class="panel-head">安装选项</div>
<div class="panel-main">
<div class="slide">
<div class="form-item">
<div class="foxui-input-group data-method">
<label>安装方式:</label>
<div class="foxui-radio-group">
<div class="foxui-radio is-checked">
<span class="foxui-radio-input">
<i class="foxui-radio-icon"></i>
<input type="radio" value="1" checked="checked" />
</span>
<span class="foxui-radio-label">体验数据</span>
</div>
<div class="foxui-radio">
<span class="foxui-radio-input">
<i class="foxui-radio-icon"></i>
<input type="radio" value="2" checked="checked" />
</span>
<span class="foxui-radio-label">纯净安装</span>
</div>
</div>
</div>
</div>
<!-- 默认模板 -->
<div class="form-item foxui-margin-top-20" id="defaultTemplate">
<?php echo $templateInfo?>
</div>
</div>
</div>
</div>
<div class="panel foxui-margin-top-20">
<div class="panel-head">数据库选项</div>
<div class="panel-main">
<div class="slide">
<div class="form-item">
<div class="foxui-input-group">
<label class="foxui-required">数据库主机:</label>
<input class="foxui-size-small" placeholder="请输入内容" value="127.0.0.1" id="dbhost" onblur="blurInfo('dbhost','host-info','数据库主机地址为空')"/>
<div class="host-info">
<span class="info">
数据库主机地址与程序同服务器一般为127.0.0.1
</span>
</div>
</div>
</div>
<div class="form-item foxui-margin-top-20">
<div class="foxui-input-group">
<label class="foxui-required">数据库端口:</label>
<input class="foxui-size-small" placeholder="输入你的数据库端口" value="3306" id="dbport" onblur="blurInfo('dbport','port-info','数据库端口为空')"/>
<div class="port-info">
</div>
</div>
</div>
<div class="form-item foxui-margin-top-20">
<div class="foxui-input-group">
<label class="foxui-required">数据库用户:</label>
<input class="foxui-size-small" placeholder="输入你的数据库用户名" value="root" id="dbuser" onblur="blurInfo('dbuser','user-info','数据库用户为空')"/>
<div class="user-info">
</div>
</div>
</div>
<!-- 连接正常 -->
<div class="form-item foxui-margin-top-20">
<div class="foxui-input-group pwd">
<label class="foxui-required">数据库密码:</label>
<input class="foxui-size-small" placeholder="输入正确的数据库密码" value="" type="password" onblur="checkPwd()" id="dbpwd"/>
<div class="pwd-info">
</div>
</div>
</div>
<!-- 自动创建 -->
<div class="form-item foxui-margin-top-20">
<div class="foxui-input-group">
<label class="foxui-required">数据库名称:</label>
<input class="foxui-size-small" placeholder="输入正确的数据库名称" value="<?php echo $dbname;?>" id="dbname" onblur="checkDb()"/>
<div class="dbname-info">
</div>
</div>
</div>
</div>
</div>
</div>
<div class="panel web-panel foxui-margin-top-20">
<div class="panel-head">网站设置</div>
<div class="panel-main">
<div class="slide">
<div class="form-item">
<div class="foxui-input-group">
<label>网站名称:</label>
<input class="foxui-size-small" placeholder="" value="我的网站" id="my_website"/>
</div>
</div>
<div class="form-item foxui-margin-top-20">
<div class="foxui-input-group">
<label>管理邮箱:</label>
<input class="foxui-size-small" placeholder="" value="admin@FoxCMS.cn" id="email"/>
</div>
</div>
<div class="form-item foxui-margin-top-20">
<div class="foxui-input-group">
<label class="foxui-required">网站域名:</label>
<input class="foxui-size-small" placeholder="" value="<?php echo $serverURLInfo['domain'];?>" id="domain"/>
<input type="hidden" class="foxui-size-small" placeholder="" value="<?php echo $serverURLInfo['url_prefix'];?>" id="url_prefix"/>
</div>
</div>
<div class="line foxui-margin-top-28 foxui-margin-bottom-28"></div>
<div class="form-item foxui-margin-top-20">
<div class="foxui-input-group">
<label class="foxui-required">管理员账号:</label>
<input class="foxui-size-small" placeholder="" value="admin" id="username"/>
</div>
</div>
<div class="form-item foxui-margin-top-20">
<div class="foxui-input-group">
<label class="foxui-required">管理员密码:</label>
<input class="foxui-size-small" type="password" placeholder="请设置后台管理员密码" value="" id="password" onblur="isPwd()"/>
<div id="password-info">
<span class="info">
密码必须包含数字、大小写字母、特殊字符中至少3种,且不少于8位
</span>
</div>
</div>
</div>
<div class="form-item foxui-margin-top-20">
<div class="foxui-input-group">
<label class="foxui-required">确认密码:</label>
<input class="foxui-size-small" type="password" placeholder="请牢记后台管理员密码" value="" id="confirm_password"/>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="step-foot">
<button class="foxui-size-medium foxui-shape-round is-long prev">
<i class="foxui-icon-xiangzuo-o"></i>
<span>后退</span>
</button>
<button class="foxui-solid-primary foxui-shape-round foxui-size-medium is-long next">
<span>继续</span>
<i class="foxui-icon-xiangyou-o"></i>
</button>
</div>
</div>
</main>
<?php include "footer.html"?>
</div>
</body>
<script src="/static/js/jquery-3.6.0.min.js"></script>
<script src="/static/js/foxui-1.32.min.js"></script>
<script src="js/common.install.js"></script>
<script>
// checkPwd();//检查数据密码
let isConn=checkDb();//检查数据库
let time = 0,
timer = null;
// 上一步
$('button.prev').click(function () {
location.href = '?step=3';
});
// 下一步
$('button.next').click(function () {
let dbhost = $("#dbhost").val();
let dbport = $("#dbport").val();
let dbuser = $("#dbuser").val();
let dbpwd = $("#dbpwd").val();
let dbname = $("#dbname").val();
let my_website = $("#my_website").val();
let email = $("#email").val();
let domain = $("#domain").val();
let username = $("#username").val();
let password = $("#password").val();
let confirm_password = $("#confirm_password").val();
if(dbhost == ""){
blurInfo("dbhost", "host-info", "数据库主机为空");
return;
}
if(dbport == ""){
blurInfo("dbport", "port-info", "数据库端口为空");
return;
}
if(dbuser == ""){
blurInfo("dbuser", "user-info", "数据库用户为空");
return;
}
if(dbpwd == ""){
blurInfo("dbpwd", "pwd-info", "数据库密码为空");
return;
}
if(isConn){
return;
}
if(dbname == ""){
blurInfo("dbname", "dbname-info", "数据库名称为空");
return;
}
if(domain == ""){
foxui.message({
text: "网站域名为空",
type: 'danger'
})
return;
}
if(username == ""){
foxui.message({
text: "管理员账号为空",
type: 'danger'
})
return;
}
if(!isPwd()){
return;
}
if(confirm_password != password){
foxui.message({
text: "确认密码不一致",
type: 'danger'
})
return;
}
foxui.loading({
el: 'body',
type: 'block',
background: 'black',
text: '正在安装',
info: '安装中,请稍后...',
iconType: 'spinner',
iconColor: '#000000',
iconSize: 42,
});
timer = setInterval(() => {
time++;
_calTime();
}, 1000);
$.ajax({
url: 'installdb.php',
data: {
check:"install_struct",
dbhost,
dbport,
dbuser,
dbpwd,
dbname,
my_website,
email,
domain,
username,
password,
'url_prefix':$('#url_prefix').val()
},
type: 'post',
dataType: 'html',
success: function (data) {
if(data == "pwd"){
let text = "密码必须包含数字、大小写字母、特殊字符中至少3种,且不少于8位";
foxui.message({
type:"danger",
text: text
});
onSuccess()
}else if(data == "true"){
$.ajax({
url: 'installdb.php',
data: {
check:"install_data",
dbhost,
dbport,
dbuser,
dbpwd,
dbname,
my_website,
email,
domain,
username,
password,
'url_prefix':$('#url_prefix').val(),
'data_method':$('.data-method .foxui-radio.is-checked input').val()
},
type: 'post',
dataType: 'html',
success: function (data) {
let text = "";
let type = "danger";
if(data == "conn"){
text = "数据库连接失败!";
}else if (data == "create"){
text = "数据库创建失败!";
}else if (data == "false"){
text = "基础数据安装出错!";
}else if (data == "true"){
type = "success";
text = "安装成功";
location.href = '?step=5';
}else{
text = "基础数据安装出错!";
}
foxui.closeLoading();
onSuccess();
foxui.message({
type:type,
text:text
});
}
});
}else{
foxui.closeLoading();
foxui.message({
type:"danger",
text:"数据库表安装出错!"
});
onSuccess()
}
}
});
});
// 安装成功后跳转
function onSuccess() {
time = 0;
foxui.closeLoading();
clearInterval(timer);
timer = null;
}
// 计时
function _calTime() {
$('.foxui-loading.is-fullscreen .foxui-loading-inner.block p').text(`安装中,请稍后(${time}s)`);
}
</script>
<script>
//密码校验
function isPwd(){
let text= $("#password").val();
let re =/^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\W_]+$)(?![a-z0-9]+$)(?![a-z\W_]+$)(?![0-9\W_]+$)[a-zA-Z0-9\W_]{8,}$/;
let result = re.test(text);
if(!result) {
$("#password-info").html("<span class='info color-danger'>密码必须包含数字、大小写字母、特殊字符中至少3种,且不少于8位</span>");
return false;
}else {
$("#password-info").html("");
return true;
}
};
</script>
</html>