发布时间:2015-05-27 19:31:42作者:知识屋
很多开源的程序系统都有自定义表单功能,比如织梦和帝国;他们的自定义表单是创建了一个新的表,这是一种实现方式,但是有的时候我们可能需要一些附属的内容,或并不需要建多个表,只希望通过一个字段来存放我们附加的这些内容,这时候我们就可以通过下面这种实现方式来实现。
先看一下实现效果:
我们可以设置他的提示文字,字段,类型,默认值,参数,排序,是否在列表显示。当然我们还可以增加一些类似的展现方式,是否加亮等等。其类型有文本、下拉,单选,复选,多行文本等类型。看一下表结构:
Id不用说了,name就是表单提示文字,也就是比如姓名,性别等,qian和ziduan 是结合用的,为了就是好区分,用一个前缀和字段来组成自定义的字段标签,比较容易区分,type就是类型,value就是默认值,whcs就是参数,这个参数是默认在其类型是文本或多行文本才起作用,文本时第一个参数限制最大字节数,第二个限制长度。Role就是排序,yesno就是是否在前台显示。
代码就不用细说了吧,在设置这个自定义表单的时候比较简单,就是遍历一下,根据其type组合。
我给大家看一下这个地方的代码。
[php] view plaincopyprint? //获取参数配置信息
$system = $this->tmp_mod->getAllSystem();
if($system){
foreach($system as $key=>$val){
if($val['name']&&$val['ziduan']){
$zhu = '';
if($val['value']){
$value = @explode(',',$val['value']);
}
if($val['whcs']){
$whcs = @explode('$',$val['whcs']);
}
if(2==$val['type']){
$zhu = '<select name="'.$val['qian'].$val['ziduan'].'">';
foreach($value as $k=>$v){
$zhu .='<option value="'.$v.'">'.$v.'</option>';
}
$zhu .='</select>';
}elseif(3==$val['type']){
foreach($value as $k=>$v){
$check='';
if('0'==$k){
$check = 'checked';
}
$zhu .='<input type="radio" name="'.$val['qian'].$val['ziduan'].'" '.$check.' value="'.$v.'">'.$v;
}
}elseif(4==$val['type']){
foreach($value as $m=>$n){
$zhu .='<input type="checkbox" name="'.$val['qian'].$val['ziduan'].'[]" value="'.$n.'">'.$n;
}
}
$biao[$key]['name'] = $val['name'];
switch ($val['type']){
case '1':$biao[$key]['value']='<input type="text" id="'.$val['qian'].$val['ziduan'].'" name="'.$val['qian'].$val['ziduan'].'"
maxlength="'.$whcs[0].'" style="width:'.$whcs[1].'px" value="'.$val['value'].'" />';break;
case '2':$biao[$key]['value']=$zhu;break;
case '3':$biao[$key]['value']=$zhu;break;
case '4':$biao[$key]['value']=$zhu;break;
case 5:$biao[$key]['value']='<textarea id="'.$val['qian'].$val['ziduan'].'" style="width:'.$whcs[0].'px;height:'.$whcs[1].'px" name="'.$val['qian'].$val['ziduan'].'">'.$val['value'].'</textarea>';break;
default:;
}
}
}
}
如何对PHP文件进行加密方法 PHP实现加密的几种方式介绍
php生成圆角图片的方法 电脑中php怎么生成圆角图片教程
用PHP构建一个留言本方法步骤 php怎么实现留言板功能
php中三元运算符用法 php中的三元运算符使用说明
php文件如何怎么打开方式介绍 php文件用什么打开方法
PHP怎么插入数据库方法步骤 php编程怎么导入数据库教程
如何安装PHPstorm并配置方法教程 phpstorm安装后要进行哪些配置
PHP 获取远程文件大小的3种解决方法 如何用PHP获取远程大文件的大小
20个实用PHP实例代码 php接口开发实例代码详细介绍
如何架设PHP服务器方法步骤 怎么搭建php服务器简单教程