<p align="center">
<a href="https://github.com/xaboy/form-builder">
<img width="200" src="http://file.lotkk.com/form-builder.png">
</a>
</p>
<h1 align="center">form-builder</h1>
<p align="center">
<img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="MIT" />
<a href="https://github.com/xaboy">
<img src="https://img.shields.io/badge/Author-xaboy-blue.svg" alt="xaboy" />
</a>
<a href="https://packagist.org/packages/xaboy/form-builder">
<img src="https://img.shields.io/packagist/v/xaboy/form-builder.svg" alt="version" />
</a>
<a href="https://packagist.org/packages/xaboy/form-builder">
<img src="https://img.shields.io/packagist/php-v/xaboy/form-builder.svg" alt="php version" />
</a>
<a href="#backers" alt="sponsors on Open Collective"><img src="https://opencollective.com/form-builder/backers/badge.svg" />
</a>
<a href="#sponsors" alt="Sponsors on Open Collective"><img src="https://opencollective.com/form-builder/sponsors/badge.svg" />
</a>
</p>
<p align="center">
PHP表单生成器,快速生成现代化的form表单。包含复选框、单选框、输入框、下拉选择框等元素以及省市区三级联动、时间选择、日期选择、颜色选择、树型、文件/图片上传等功能。
</p>
> 1.2.4 版本支持字段验证
> 计划对该项目重构和升级,期待的话就点个 star 吧
>如果对您有帮助,您可以点右上角 "Star" 支持一下 谢谢!
>本项目还在不断开发完善中,如有建议或问题请[在这里提出](https://github.com/xaboy/form-builder/issues/new)
## 演示项目
[开源的高品质微信商城](http://github.crmeb.net/u/xaboy)
演示地址: [http://demo25.crmeb.net](http://demo25.crmeb.net) 账号:demo 密码:crmeb.com
## 使用建议
1. 建议将静态资源加载方式从 CDN 加载修改为自己本地资源或自己信任的 CDN [静态资源链接](https://github.com/xaboy/form-builder/blob/master/src/Form.php#L89)
2. 建议根据自己的业务逻辑重写默认的表单生成页 [默认表单生成页](https://github.com/xaboy/form-builder/tree/master/src/view)
## 更新说明
#### 1.2.7 (2018-12-12)
- 完善时间选择组件,日期选择组件验证规则
- 新增 fields 类型验证规则
- 新增 使用 view 方法生成时,表单只能被创建一次
- 修复一些小问题
## 安装
`composer require xaboy/form-builder`
## 示例
![https://raw.githubusercontent.com/xaboy/form-create/master/images/sample110.jpg](https://raw.githubusercontent.com/xaboy/form-create/master/images/sample110.jpg)
### 例子 (TP框架)
#### 版本1 编辑权限
```php
$form = Form::create(Url::build('update',array('id'=>$id)),[
Form::input('menu_name','按钮名称',$menu['menu_name']),
Form::select('pid','父级id',(string)$menu->getData('pid'))->setOptions(function()use($id){
$list = (Util::sortListTier(MenusModel::where('id','<>',$id)->select()->toArray(),'顶级','pid','menu_name'));
$menus = [['value'=>0,'label'=>'顶级按钮']];
foreach ($list as $menu){
$menus[] = ['value'=>$menu['id'],'label'=>$menu['html'].$menu['menu_name']];
}
return $menus;
})->filterable(1),
Form::select('module','模块名',$menu['module'])->options([['label'=>'总后台','value'=>'admin'],['label'=>'总后台1','value'=>'admin1']]),
Form::input('controller','控制器名',$menu['controller']),
Form::input('action','方法名',$menu['action']),
Form::input('params','参数',MenusModel::paramStr($menu['params']))->placeholder('举例:a/123/b/234'),
Form::frameInputOne('icon','图标',Url::build('admin/widget.widgets/icon',array('fodder'=>'icon')),$menu['icon'])->icon('ionic'),
Form::number('sort','排序',$menu['sort']),
Form::radio('is_show','是否菜单',$menu['is_show'])->options([['value'=>0,'label'=>'隐藏'],['value'=>1,'label'=>'显示(菜单只显示三级)']])
]);
$form->setMethod('post')->setTitle('编辑权限');
$this->assign(compact('form'));
return $this->fetch('public/form-builder');
```
#### 效果
![https://raw.githubusercontent.com/xaboy/form-builder/master/images/demo02.jpg](https://raw.githubusercontent.com/xaboy/form-builder/master/images/demo02.jpg)
#### 版本2 添加产品
```php
$field = [
Form::select('cate_id','产品分类')->setOptions(function(){
$list = CategoryModel::getTierList();
foreach ($list as $menu){
$menus[] = ['value'=>$menu['id'],'label'=>$menu['html'].$menu['cate_name'],'disabled'=>$menu['pid']== 0];//,'disabled'=>$menu['pid']== 0];
}
return $menus;
})->filterable(1)->multiple(1),
Form::input('store_name','产品名称')->col(Form::col(8)),
Form::input('store_info','产品简介')->type('textarea'),
Form::input('keyword','产品关键字')->placeholder('多个用英文状态下的逗号隔开'),
Form::input('unit_name','产品单位','件'),
Form::frameImageOne('image','产品主图片(305*305px)',Url::build('admin/widget.images/index',array('fodder'=>'image')))->icon('image')->width('100%')->height('550px'),
Form::frameImages('slider_image','产品轮播图(640*640px)',Url::build('admin/widget.images/index',array('fodder'=>'slider_image')))->maxLength(5)->icon('images')->width('100%')->height('550px')->spin(0),
Form::number('price','产品售价')->min(0)->col(8),
Form::number('ot_price','产品市场价')->min(0)->col(8),
Form::number('give_integral','赠送积分')->min(0)->precision(0)->col(8),
Form::number('postage','邮费')->min(0)->col(Form::col(8)),
Form::number('sales','销量')->min(0)->precision(0)->col(8),
Form::number('ficti','虚拟销量')->min(0)->precision(0)->col(8),
Form::number('stock','库存')->min(0)->precision(0)->col(8),
Form::number('cost','产品成本价')->min(0)->col(8),
Form::number('sort','排序')->col(8),
Form::radio('is_show','产品状态',0)->options([['label'=>'上架','value'=>1],['label'=>'下架','value'=>0]])->col(8),
Form::radio('is_hot','热卖单品',0)->options([['label'=>'是','value'=>1],['label'=>'否','value'=>0]])->col(8),
Form::radio('is_benefit','促销单品',0)->options([['label'=>'是','value'=>1],['label'=>'否','value'=>0]])->col(8),
Form::radio('is_best','精品推荐',0)->options([['label'=>'是','value'=>1],['label'=>'否','value'=>0]])->col(8),
Form::radio('is_new','首发新品',0)->options([['label'=>'是','value'=>1],['label'=>'否','value'=>0]])->col(8),
Form::radio('is_postage','是否包邮',0)->options([['label'=>'是','value'=>1],['label'=>'否','value'=>0]])->col(8)
];
$form = Form::create(Url::build('save'));
$form->setMethod('post')->setTitle('添加产品')->components($field);
$this->assign(compact('form'));
return $this->fetch('public/form-builder');
```
#### 效果
![https://raw.githubusercontent.com/xaboy/form-builder/master/images/demo03.jpg](https://raw.githubusercontent.com/xaboy/form-builder/master/images/demo03.jpg)
#### 版本3 编辑产品
```php
$product = ProductModel::get($id);
$form = Form::create(Url::build('update',array('id'=>$id)),[
Form::select('cate_id','产品分类',explode(',',$product->getData('cate_id')))->setOptions(function(){
$list = CategoryModel::getTierList();
foreach ($list as $menu){
$menus[] = ['value'=>$menu['id'],'label'=>$menu['html'].$menu['cate_name'],'disabled'=>$menu['pid']== 0];//,'disabled'=>$menu['pid']== 0];
}
return $menus;
})->filterable(1)->multiple(1),
Form::input('store_name','产品名称',$product->getData('store_name')),
Form::input('store_info','产品简介',$product->getData('store_info'))->type('textarea'),
Form::input('keyword','产品关键字',$product->getData('keyword'))->placeholder('多个用英文状态下的逗号隔开'),
For
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
CRMEB知识付费系统是西安众邦科技旗下的具有自主知识产权的在线教育知识付费系统。系统基于ThinkPhp5.0+layui+Vue开发,功能包含在线直播、付费视频、付费音频、付费阅读、会员系统、分销系统、拼团活动、直播带货、直播打赏、商城系统等。能够快速积累客户、会员数据分析、智能转化客户、有效提高销售、吸引流量、网络营销、品牌推广的一款应用,且更适合企业二次开发; 我们专注于原创研发和创意设计,探索并实现传统教育行业转型发展的难题,通过互联网工具,为合作伙伴长远发展贡献全力。在更深远的认知中,将不断修正服务导向,以开放共享的理念服务中小企业,心之所向,素履以往,以敬畏之心拥抱互联网,勇做推动行业发展的中坚力量,创造价值,为推进企业互联网转型发展做出贡献。
资源推荐
资源详情
资源评论
收起资源包目录
CRMEB知识付费系统源码下载 (2003个子文件)
workerman.bat 132B
pimple.c 37KB
nginx.conf 97B
style.css 1.07MB
iview.css 261KB
iview.css 220KB
summernote-bs3.css 143KB
style.css 142KB
bootstrap.min.css 118KB
bootstrap.min.css 118KB
style.min.css 118KB
ydui-px.css 77KB
emoji.css 77KB
emoji.css 77KB
layui.css 71KB
vant.css 62KB
animate.min.css 46KB
ueditor.css 43KB
video-js.min.css 39KB
ueditor.min.css 34KB
datepicker3.css 33KB
font-awesome.min.css 28KB
font-awesome.min.css 26KB
ambiance.css 25KB
style.min.css 25KB
iconfont.css 25KB
bootstrap-table-group-by.css 24KB
animate.css 23KB
video-js.css 21KB
iconfont.css 20KB
index.css 18KB
image.css 18KB
sweetalert.css 18KB
swiper-3.4.1.min.css 17KB
swiper.min.css 17KB
swiper.min.css 17KB
umeditor.css 17KB
simditor.css 17KB
ui.jqgrid.css 16KB
video.css 15KB
layer.css 14KB
attachment.css 14KB
layer.css 14KB
umeditor.min.css 14KB
jasny-bootstrap.min.css 14KB
main.css 13KB
index.css 12KB
chosen.css 12KB
dropzone.css 11KB
video-js.min.css 11KB
layer.css 11KB
layim.css 11KB
fullcalendar.css 11KB
install.css 10KB
style.css 10KB
summernote.css 10KB
plyr.css 10KB
layui.mobile.css 10KB
mathquill.css 9KB
daterangepicker.css 8KB
laydate.css 7KB
codemirror.css 7KB
shCoreDefault.css 7KB
base.css 7KB
base.css 7KB
blueimp-gallery.min.css 7KB
mui.picker.all.css 7KB
awesome-bootstrap-checkbox.css 7KB
service.css 7KB
toastr.min.css 7KB
laydate.css 6KB
webuploader-demo.min.css 6KB
store_service.css 6KB
jquery.steps.css 6KB
bootstrap-table.min.css 5KB
footable.core.css 5KB
FJL.picker.css 5KB
layer.css 5KB
layer.css 5KB
layui-admin.css 5KB
mui.picker.min.css 5KB
jquery.fancybox.css 5KB
dataTables.bootstrap.css 5KB
style.css 4KB
reset.css 4KB
scrawl.css 4KB
clockpicker.css 4KB
basic.css 4KB
style.css 4KB
reset.css 4KB
bootstrap-colorpicker.min.css 3KB
laydate.css 3KB
cropper.min.css 3KB
ion.rangeSlider.css 3KB
mui.dtpicker.css 3KB
Mdate.css 3KB
jquery.nouislider.css 3KB
layer.ext.css 3KB
image.css 3KB
codemirror.css 3KB
共 2003 条
- 1
- 2
- 3
- 4
- 5
- 6
- 21
资源评论
免费开源商城系统
- 粉丝: 3025
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功