PHP网站配置(系统设置)数据库表结构及实现
网站后台一般少不了站点配置,一种方式是写到配置文件里,第二种是写到数据库,下面以写到数据库为例
数据库表结构
DROP TABLE IF EXISTS `option`;
CREATE TABLE `option` (`option_name` varchar(64) NOT NULL DEFAULT '' COMMENT '配置名',`option_value` varchar(1000) COMMENT '配置值',`option_explain` varchar(200) NOT NULL COMMENT '配置说明',PRIMARY KEY (`option_name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='全站配置表';
主键为配置名 option_name,配置值 option_value,即key-value对形式存储,其他字段根据需要自行扩充
查询配置
/*** Notes:获取配置信息* @auther: xxf* Date: 2019/7/16* Time: 17:29* @param $key* @return array|\Illuminate\Cache\CacheManager|mixed*/public static function cmf_get_option($key){if (!is_string($key) || empty($key)) {return [];}$optionValue = cache('options_' . $key);if (empty($optionValue)) {$optionValue = self::where('option_name', $key)->value('option_value');if (!empty($optionValue)) {cache('cmf_options_' . $key, $optionValue);}}return $optionValue;}
前端显示,修改
name="data[{$vo.option_name}]" 将表单以数组方式提交到后台
<form class="layui-form form-opArticle">{volist name="list" id="vo" key="k"}<div class="layui-form-item"><label class="layui-form-label">{$vo.option_explain}:</label><div class="layui-input-block"><input type="text" name="data[{$vo.option_name}]" lay-verify="title" autocomplete="off" placeholder="请输入" value="{$vo.option_value}" class="layui-input"></div></div>{/volist}{:token()}<div class="layui-form-item"><div class="layui-input-block div-form-op"><button class="layui-btn" type="button" onclick="edit()">提交</button><button type="reset" class="layui-btn layui-btn-primary">放弃</button></div></div>
</form>
public function editOption(Request $request){$data = $request->param('data');$opRes = $this->model->edit($data);return showMsg($opRes['tag'],$opRes['message']);}public function edit($data){$count = 0;foreach ($data as $k =>$v) {$res = $this->where('option_name',$k)->update(['option_value'=>$v]);//$res = $this->where('option_name','aa')->update(['option_value'=>23]);$res && $count++;}$validateRes['tag'] = $count > 0;$validateRes['message'] = $count > 0 ? '成功' : '失败';return $validateRes;}
PHP网站配置(系统设置)数据库表结构及实现相关推荐
- 开源网站分析软件Piwik的数据库表结构
Piwik是一套基于Php+MySQL技术构建,能够与Google Analytics相媲美的开源网站访问统计系统,前身是phpMyVisites.Piwik可以给你详细的统计信息,比如网页浏览人数, ...
- zabbix数据库表结构简单解析
zabbix数据库表结构-持续更新 时间 2014-06-11 21:59:08 furion's blog 原文 http://www.furion.info/623.html 主题 MySQL ...
- 【工具篇】利用DBExportDoc V1.0 For MySQL自动生成数据库表结构文档(转
对于DBA或开发来说,如何规范化你的数据库表结构文档是灰常之重要的一件事情.但是当你的库,你的表排山倒海滴多的时候,你就会很头疼了. 推荐一款工具DBExportDoc V1.0 For MySQL( ...
- 比较数据库表结构之间的差异
在工作中常常会遇到升级的事情,对于不同的用户,有时所使用的数据库的表结构也会有一些不同,时间长了,往往就需要一份各版本数据库表结构的差异报告了.当你需要一份这样的报告时,你会怎么做?一个个的比较每个库 ...
- Java实现数据库表结构导出到Excel
2019独角兽企业重金招聘Python工程师标准>>> 本人自己写的一个工具,界面化,稍微配置即可数据库中的表的结构导出到Excel. 源码地址数据库表结构导出到Excel一键式工具 ...
- 开源数据库表结构文档生成器
大家好,我是TJ 一个励志推荐10000款开源项目与工具的程序员 TJ君前几天和一个在银行科技部上班的同学聚会,同学跟TJ君吐槽,一些小银行的科技表面看上去专业,实际各种马虎不负责. 打个比方,有一次 ...
- java 轻量数据库_DBTree是一个springboot2 + vue-element-template实现的轻量数据库表结构查看及管理工具...
DBTree简介 DBTree是一个WEB版的轻量数据库表结构查看及管理工具,相比phpMyAdmin, DBTree只专注于方便开发查看表结构信息和 注释维护.通过树形展示库表结构,可以对表进行自定 ...
- Activiti数据库表结构(表详细版)
http://blog.csdn.net/hj7jay/article/details/51302829 1 Activiti数据库表结构 1.1 数据库表名说明 Activiti工作流总 ...
- zabbix数据库表结构
zabbix数据库表结构的重要性 想理解zabbix的前端代码.做深入的二次开发,甚至的调优,那就不能不了解数据库的表结构了. 我们这里采用的zabbix1.8.mysql,所以简单的说下我们mysq ...
最新文章
- 使用docker制作hexo镜像
- java多线程的同步
- Java设计模式(十七):责任链设计模式
- Linux 小知识翻译 - 「RAID」
- 云梦天气预报软件测试,云梦天气预报15天
- 《食堂远程下单系统》设计规格说明书
- CVPR 2018 论文解读 | 基于GAN和CNN的图像盲去噪
- Android数据存储与访问
- 机器学习-线性回归(Linear Regression)
- 使用Javascript 获得Word application的版本号
- web前端的易错点和冷知识,新人必看!
- 小心sae的jvm异常导致的Error 404 – Not Found.No context on this server matched or handled this request....
- 面向对象三,约束,加密
- 使用Git和远程代码库
- Codeforces-1684 D: Traps 【贪心、排序】
- 戴尔服务器重装系统蓝屏重启,戴尔电脑装系统蓝屏如何解决?
- 干货 | 教你打造一款颜值逆天的VS Code
- Buy and Resell(贪心好题!)
- OpenCV学习心得:Scalar()的几种使用方法
- Bugku—PHP代码审计—md5函数