This commit is contained in:
zhao 2020-02-25 12:22:00 +08:00
parent c02cc0159c
commit 5476ebf681
4 changed files with 39 additions and 30 deletions

View File

@ -296,7 +296,7 @@ class Article extends BaseController
$res = ['status'=>0,'msg'=>'上传成功','url'=> $name_path]; $res = ['status'=>0,'msg'=>'上传成功','url'=> $name_path];
}else{ }else{
$res = ['status'=>1,'msg'=>'上传错误']; $res = ['status'=>-1,'msg'=>'上传错误'];
} }
return json($res); return json($res);
} }

View File

@ -45,33 +45,41 @@ function write_config($config)
* @param resource $db 数据库连接资源 * @param resource $db 数据库连接资源
* @param string $prefix 数据表前缀 * @param string $prefix 数据表前缀
*/ */
function create_tables($db, $prefix = '') { function create_tables($db, $prefix = '')
// 导入sql数据并创建表 {
// 导入sql数据表
$sql = file_get_contents('../app/install/data/taoler.sql'); $sql = file_get_contents('../app/install/data/taoler.sql');
//替换表前缀 if ($sql) {
$orginal = 'tao_'; //sql表前缀
($orginal==$prefix) ? true : $sql = str_replace(" `{$orginal}", " `{$prefix}", $sql); $orginal = 'tao_';
$sql_array=preg_split("/;[\r\n]+/", $sql); ($orginal==$prefix) ? true : $sql = str_replace(" `{$orginal}", " `{$prefix}", $sql);
//开始安装 $sql_array = preg_split("/;[\r\n]+/", $sql);
//var_dump($sql_array); //var_dump($sql_array);
//开始写入表
foreach ($sql_array as $k => $v) { foreach ($sql_array as $k => $v) {
if (!empty($v)) { if (!empty($v)) {
//$v=$v.';'; //$v=$v.';';
if (substr($v, 0, 12) == 'CREATE TABLE') { if (substr($v, 0, 12) == 'CREATE TABLE') {
$name = preg_replace("/^CREATE TABLE `(\w+)` .*/s", "\\1", $v); $name = preg_replace("/^CREATE TABLE `(\w+)` .*/s", "\\1", $v);
$msg = "创建数据表{$name}"; $msg = "创建数据表{$name}";
if (false !== $db->query($v)) { $res = $db->query($v);
//echo $msg.'成功'; if ($res == false) {
} else {
echo $msg.'失败'; echo $msg.'失败';
} }
} else { } else {
$db->query($v); //执行插入数据
$res = $db->query($v);
if ($res == false) {
echo '数据插入失败';
}
} }
//echo substr($v, 0, 12).'--';
// $db->query($v);
} }
} }
} else {
return false;
}
return true;
} }
function register_administrator($db, $prefix, $admin) { function register_administrator($db, $prefix, $admin) {

View File

@ -9,9 +9,6 @@ use think\facade\Session;
class Index extends BaseController class Index extends BaseController
{ {
/**
* 安装向导
*/
// 检测是否安装过 // 检测是否安装过
protected function initialize(){ protected function initialize(){
if(file_exists('../install.lock')){ if(file_exists('../install.lock')){
@ -59,14 +56,15 @@ class Index extends BaseController
$data = Request::param(); $data = Request::param();
//var_dump($data); //var_dump($data);
if (!preg_match("/^[a-zA-Z]{1}([0-9a-zA-Z]|[._]){4,19}$/", $data['admin_user'])) { if (!preg_match("/^[a-zA-Z]{1}([0-9a-zA-Z]|[._]){4,19}$/", $data['admin_user'])) {
die("<script>alert('后台管理用户名不符合规范至少包含4个字符需以字母开头');history.go(-1)</script>"); return json(['code'=>-1,'msg'=>"管理用户名至少包含5个字符需以字母开头"]);
} }
if (!preg_match("/^[\@A-Za-z0-9\!\#\$\%\^\&\*\.\~]{6,22}$/", $data['admin_pass'])) { if (!preg_match("/^[\@A-Za-z0-9\!\#\$\%\^\&\*\.\~]{6,22}$/", $data['admin_pass'])) {
die("<script>alert('登录密码至少包含6个字符。可使用字母数字和符号');history.go(-1)</script>"); return json(['code'=>-1,'msg'=>'登录密码至少包含6个字符。可使用字母数字和符号']);
} }
if ($data['admin_pass'] != $data['admin_pass2']) { if ($data['admin_pass'] != $data['admin_pass2']) {
die("<script>alert('两次输入的密码不一致');history.go(-1)</script>"); return json(['code'=>-1,'msg'=>'两次输入的密码不一致']);
//die("<script>alert('两次输入的密码不一致');history.go(-1)</script>");
} }
$email = $data['admin_email']; $email = $data['admin_email'];
@ -74,9 +72,10 @@ class Index extends BaseController
$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));
$webtitle = $data['webtitle'];
$webname = $data['webname']; $webname = $data['webname'];
$webtitle = $data['webtitle'];
$web = Request::domain();
//数据库配置
$dbhost = $data['DB_HOST']; $dbhost = $data['DB_HOST'];
$dbuser = $data['DB_USER']; $dbuser = $data['DB_USER'];
$dbpass = $data['DB_PWD']; $dbpass = $data['DB_PWD'];
@ -92,7 +91,7 @@ class Index extends BaseController
} }
catch(\PDOException $e) catch(\PDOException $e)
{ {
return json(['code'=>-1,'msg'=>"数据库连接失败" . $e->getMessage()]); return json(['code'=>-1,'msg'=>"数据库信息错误" . $e->getMessage()]);
} }
$sql = 'CREATE DATABASE IF NOT EXISTS '.$dbname.' DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci'; $sql = 'CREATE DATABASE IF NOT EXISTS '.$dbname.' DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci';
@ -103,16 +102,18 @@ class Index extends BaseController
$conn = null; $conn = null;
//写入数据表 //写入数据表
//创建数据库
try { try {
$db = new \PDO("mysql:host=$dbhost;dbname=$dbname", $dbuser, $dbpass); $db = new \PDO("mysql:host=$dbhost;dbname=$dbname", $dbuser, $dbpass);
} }
catch(\PDOException $e) catch(\PDOException $e)
{ {
return json(['code'=>-1,'msg'=>"PDO数据库连接失败" . $e->getMessage()]); return json(['code'=>-1,'msg'=>"数据库连接失败" . $e->getMessage()]);
}
//创建表
$res = create_tables($db,$prefix);
if(!$res){
return json(['code'=>-1,'msg'=>"数据表创建失败"]);
} }
create_tables($db,$prefix);
//写入初始配置 //写入初始配置
$table_admin = $data['DB_PREFIX'] . "admin"; $table_admin = $data['DB_PREFIX'] . "admin";
@ -121,7 +122,7 @@ class Index extends BaseController
$sql_a = "UPDATE $table_admin SET username='{$user}',email='{$email}',password='{$pass}',status=1,auth_group_id=1,create_time='{$create_time}' WHERE id = 1"; $sql_a = "UPDATE $table_admin SET username='{$user}',email='{$email}',password='{$pass}',status=1,auth_group_id=1,create_time='{$create_time}' WHERE id = 1";
$sql_u = "UPDATE $table_user SET name='{$user}',email='{$email}',password='{$pass}',auth=1,status=1,create_time='{$create_time}' WHERE id = 1"; $sql_u = "UPDATE $table_user SET name='{$user}',email='{$email}',password='{$pass}',auth=1,status=1,create_time='{$create_time}' WHERE id = 1";
$sql_s = "UPDATE $table_system SET webname='{$webname}',webtitle='{$webtitle}',domain='{Request::domain()}',create_time='{$create_time}' WHERE id = 1"; $sql_s = "UPDATE $table_system SET webname='{$webname}',webtitle='{$webtitle}',domain='{$web}',create_time='{$create_time}' WHERE id = 1";
$res_a = $db->exec($sql_a); $res_a = $db->exec($sql_a);
//var_dump($db->errorInfo()); //var_dump($db->errorInfo());

View File

@ -64,7 +64,7 @@
<div class="detail-hits" id="LAY_jieAdmin" data-id="{$article['id']}"> <div class="detail-hits" id="LAY_jieAdmin" data-id="{$article['id']}">
<!--span style="padding-right: 10px; color: #FF7200">悬赏60飞吻</span--> <!--span style="padding-right: 10px; color: #FF7200">悬赏60飞吻</span-->
{if(session('user_name')==$article.user.name)} {if(session('user_name')==$article.user.name || $user.auth == 1)}
<span class="layui-btn layui-btn-xs jie-admin" type="edit"><a href="{:url('article/edit',['id'=>$article.id])}">编辑此贴</a></span> <span class="layui-btn layui-btn-xs jie-admin" type="edit"><a href="{:url('article/edit',['id'=>$article.id])}">编辑此贴</a></span>
{/if} {/if}
</div> </div>