官网
教程
文档
官网文档
小程序集群与uniapp
小程序app接口教程
冰蓝世界版
阿赖耶识与随风版
网站首页
齐博X1教程专栏
文章列表
推荐
表单器新增与修改
超级蜘蛛查
2024-02-28 16:14:56
10
表单器中新增加 与 修改是类似的,他们都要用到类的属性 `protected $form_items;` 没有使用函数的话,就可以直接在属性中附值,比如 ~~~ protected $form_items = [ ['text', 'title', '标题'], ['text', 'keywords', 'SEO关键字'], ['text', 'descrip', '分享描述'], ['jcrop', 'picurl', '分享图片'], ['text', 'template', '模板路径','路径要包含风格名,只能放在index_style目录下,比如:“qiboxx/index/alonepage/pc_index.htm”'], ['radio', 'status', '是否启用', '', [1 => '启用', 0 => '禁用'], 1], ['ueditor', 'content', '内容'], ]; ~~~ 如果涉及到函数的话,就需要在方法里边赋值,如下: ~~~ $this->form_items = [ ['select','fid', '所属分类', '',getsort()], //因为getsort()是函数,只能在方法里边定义 ['text','name', '插件名称', ''], ['static','keywords', '插件关键字', ''], ['radio','ifopen', '启用或禁用', '',['关闭系统','启用系统']], ['textarea','about', '介绍', ''], ['number','list', '排序值', ''], ['icon','icon', '图标', ''], ]; ~~~ 文件中 `\application\common\traits\AddEditList.php` 的 `add()` `edit()` 这两个方法仅只是示范. ~~~ public function add() { return $this -> addContent(); } public function edit($id = null) { if (empty($id)) $this -> error('缺少参数'); $info = $this -> getInfoData($id); return $this -> editContent($info); } ~~~ add()方法中的核心是addContent()方法,我们来看看他的代码 ~~~ protected function addContent($url = 'index', $vars = []) { // 保存数据 if ($this -> request -> isPost()) { if ($this -> saveAddContent()) { $this -> success('添加成功', $url); } else { $this -> error('添加失败'); } } $template = $this->get_template('',$this->mid); //如果模板存在的话,就用实际的后台模板 if (empty($template)) { $template = $this->get_template('admin@common/wn_form'); } $this->assign('mid',$this->mid); $this->assign('f_array',$this -> form_items); $this->assign('tab_ext',$this->tab_ext); return $this->fetch($template,$vars); } ~~~ 里边包含了表单的显示与数据的处理 ***** add() edit() 这两个方法, 还是推荐大家重写, 这样代码的可读性会更好些. 重写 add() 方法的原因,有3种情况, 一种是对POST提交数据重新做处理, 另一种是对显示的表单数据做特殊处理, 最后一种,就同时需要对表单的显示数据及提交数据都要做处理. 针对第一种情况,比较省事的做法,一般是按如下处理 ~~~ public function add() { if ($this->request->isPost()) { $data = $this->request->post(); if (!empty($this -> validate)) { //验证数据 $result = $this -> validate($data, $this -> validate); if (true !== $result) $this -> error($result); } if($data['title']==''){ $this->error('用户组名称不能为空!'); } if(GroupModel::create($data)){ $this->success('创建成功 ', url('index') ); } else { $this->error('创建失败'); } } return $this -> addContent(); } ~~~ 即在 `return $this -> addContent();` 的前面劫持掉POST数据,终断下面的操作 针对第二种情况,比较省事的做法,一般是按如下处理 ~~~ public function add(){ $this->tab_ext['page_title'] = '添加充值卡'; $this->form_items = [ //['money','rmb','充值卡面额'], ['number','money','充值卡积分个数'], ['radio','sncode_type','充值卡密码复杂度','',['纯数字','纯字母','数字+字母'],2], ['number','sncode_leng','密码长度'], ['number','num','批量生成多少个'], ]; return $this->addContent(); } ~~~ 即在 `return $this -> addContent();` 的前面添加表单参数.如果参数没用到函数的话, 可以直接在类的属性又或者是 `_initialize()` 初始化类的方法里边定义也是一样的 第三种情况,就是同时要修改表单属性与处理提交数据的时候,可以参考下面的 ~~~ public function add(){ if ($this -> request -> isPost()) { $data = $this->request->post(); if ($data['money'] create($data)) { $ck++; } } if ($ck) { $this->success('操作成功','index'); }else{ $this->error('生成失败,请重新生成一次'); } } $this->tab_ext['page_title'] = '批量生成充值卡'; $this->form_items = [ //['money','rmb','充值卡面额'], ['number','money','充值卡积分个数'], ['radio','sncode_type','充值卡密码复杂度','',['纯数字','纯字母','数字+字母'],2], ['number','sncode_leng','密码长度'], ['number','num','批量生成多少个'], ]; return $this->addContent(); } ~~~ 修改其实跟新增是差不多的.这里不重复了!!
本文链接:https://x1.wanxiangsucai.com/read/29.html
没有了后一页
齐博x1云标签插件-一..
其中20代表取标题多少个字, 为了排版需要,你不想要标题的话,可以换成字符,比如
上一页
上一篇:
下一篇:齐博x1云标签插件-一件提取关键词无法使用的解决办法
相关文章推荐
1.
论坛的内容调取与修改发布点赞接口
2.
非正常修改后台入口admin.php导致的问题
3.
后台网站参数配置修改与添加
4.
新增内容想关闭窗口或者继续提交相关数据
5.
自定义时间插件更新了!新增编辑的时候自定义时间(已经安装过的请看修改教程
6.
巧用字段后面js属性来获取表单内容
7.
给表单某个字段设置初始值
8.
如果把万能表单直接插入到内容中去
9.
如何调试查找全站的表单提交接口参数
10.
任意位置调用万能表单的方法 顺便借楼说下purl的作用
齐博X1教程专栏最新文章
1.
通过随机二次元壁纸接口向齐博x1 bbs系统发布信息
2.
齐博x1云标签插件-一件提取关键词无法使用的解决办法..
3.
关于thinkphp5
4.
齐博X1更新记录
5.
解决Web部署 svg/woff/woff2字体 404错误
6.
云市场注意事项
7.
如何调取当前模块ID
8.
URL伪静态设置
9.
QQ登录接口配置
10.
邮箱接口设置之QQ企业邮箱
齐博X1教程专栏文章推荐
1.
商业模块仅限一个国际域名使用
2.
搜索结果调用其他字段的办法
3.
对接小程序设置
4.
邮箱接口设置之QQ普通邮箱
5.
004-系统设置之会员注册
6.
巧用字段后面js属性来获取表单内容
7.
滑动门+下滑加载更多详细图解
8.
通用内容数据调取及发布与点赞相关接口
9.
任意位置调用万能表单的方法 顺便借楼说下purl的作用..
10.
内页调用本栏目其它内容
建站工具推荐
您可能感兴趣的文章
通过随机二次元壁纸接口向齐博x1 bbs系统发布信息
齐博x1云标签插件-一件提取关键词无法使用的解决办法
关于thinkphp5
齐博X1更新记录
解决Web部署 svg/woff/woff2字体 404错误
云市场注意事项
如何调取当前模块ID
URL伪静态设置
QQ登录接口配置
邮箱接口设置之QQ企业邮箱