表单生成类
时间:2009-03-04
来源:互联网
<?php
/*---------------------------------------------------------------------------------#
# 表单生成类初级版,代码不是太规范,请协助修改,谢谢!
# www.biz-m.com
# QQ:493258372 QQ群: 38319692
#---------------------------------------------------------------------------------*/
class htmlform {
public $array= array();
function _htmlform($array)
{
foreach ($array as $key => $var){
$arr ="";
$key = preg_replace("/[^a-z]/i",'',$key);
$arr = split(",",$var);
$outform .= (!preg_match("/checkbox|select|radio/i",$key))?
"<dt>$arr[0]</dt><dd>".
$this->form_to('form_'.$key,$arr[0],$arr[1],$arr[2],$arr[3],$arr[4]).
"<u id=$name></u></dd> \r\n":
$this->form_go($key,$arr[0],$arr[1],$arr[2],$arr[3],$arr[4]);
}
return $outform;
}
function form_to($f_type,$title,$name,$value,$size="",$onjs=""){
return $this->$f_type($title,$name,$value,$size,$onjs);
}
function form_go($key,$title,$name,$value,$onjs=""){
$valarray = explode("|",$value);
$titarray = explode("|",$title);
$rn = count($valarray);
$min ="";
$min = ($rn>1)?1:0; //只有一个对话框
for($i=$min;$i<$rn;$i++)
{
$_title="";
$_title=($titarray[$i])? $titarray[$i]:$title;
$outform .= ($key!=='select')?
$this->form_to('form_'.$key,$_title,$name,$valarray[$i]):
"<option value=$valarray[$i]>".$_title."</option>";
}
if($key==='select')$outform = '<select name="'.$name.'"'.$onjs.'>'.$outform.'</select>';
return "<dt>$titarray[0]</dt><dd>".$outform."<u id=$name></u></dd> \r\n";
}
function form_text($title,$name,$value,$size,$onjs){
return '<input type="text" name="'.$name.'" '.$size.' value="'.$value.'" '.$onjs.'>';
}
function form_password($title,$name,$value,$size,$onjs){
return '<input type="password" name="'.$name.'" '.$size.' '.$onjs.'>';
}
function form_checkbox($title,$name,$value,$size,$onjs){
return $title.'<input type="checkbox" name="'.$name.'[]" value="'.$value.'">';
}
function form_textarea($title,$name,$value,$size,$onjs){
return '<textarea name="'.$name.'" '.$size.' '.$onjs.'>'.$value.'</textarea>';
}
function form_hidden($title,$name,$value,$size,$onjs){
return '<input type="hidden" name="'.$name.'" value="'.$value.'">';
}
function form_radio($title,$name,$value,$size,$onjs){
return $title.'<input type="radio" name="'.$name.'" value="'.$value.'">';
}
}
#'类型type' => '标题title ,键值name ,默认value,尺寸size,鼠标事件onjs'
# 'select' => '(标题title) 选择国家|1|2|3|4|5,(键值name)sel,(默认value)0|1|2|3|4|5,
$formarray = array(
'text'=>'普通,name,123,size=80,',
'textarea'=>'详细内容,text,123456,rows=5 cols=60',
'password'=>'密码,pass,,',
'checkbox'=>'多选|my 1|my 2|my 3,box,0|1|2|3,',
'select'=>'选择国家|中国|美国|英国|德国|月球,sel,0|1|2|3|4|5',
'select1'=>'选择国家2|中国2|美国2|英国2|德国2|月球2,sel2,0|1|2|3|4|5',
'select3'=>'选择国家3|中国3|美国3|英国3|德国3|月球3,sel3,0|1|2|3|4|5',
'radio'=>'单选|1|2|3|4,rad,0|1|2|3|4,10',
'radio1'=>'单选2,rad1,1',
'hidden'=>',hid,1',
);
$_form = new htmlform();
echo $_form->_htmlform($formarray);
?>
/*---------------------------------------------------------------------------------#
# 表单生成类初级版,代码不是太规范,请协助修改,谢谢!
# www.biz-m.com
# QQ:493258372 QQ群: 38319692
#---------------------------------------------------------------------------------*/
class htmlform {
public $array= array();
function _htmlform($array)
{
foreach ($array as $key => $var){
$arr ="";
$key = preg_replace("/[^a-z]/i",'',$key);
$arr = split(",",$var);
$outform .= (!preg_match("/checkbox|select|radio/i",$key))?
"<dt>$arr[0]</dt><dd>".
$this->form_to('form_'.$key,$arr[0],$arr[1],$arr[2],$arr[3],$arr[4]).
"<u id=$name></u></dd> \r\n":
$this->form_go($key,$arr[0],$arr[1],$arr[2],$arr[3],$arr[4]);
}
return $outform;
}
function form_to($f_type,$title,$name,$value,$size="",$onjs=""){
return $this->$f_type($title,$name,$value,$size,$onjs);
}
function form_go($key,$title,$name,$value,$onjs=""){
$valarray = explode("|",$value);
$titarray = explode("|",$title);
$rn = count($valarray);
$min ="";
$min = ($rn>1)?1:0; //只有一个对话框
for($i=$min;$i<$rn;$i++)
{
$_title="";
$_title=($titarray[$i])? $titarray[$i]:$title;
$outform .= ($key!=='select')?
$this->form_to('form_'.$key,$_title,$name,$valarray[$i]):
"<option value=$valarray[$i]>".$_title."</option>";
}
if($key==='select')$outform = '<select name="'.$name.'"'.$onjs.'>'.$outform.'</select>';
return "<dt>$titarray[0]</dt><dd>".$outform."<u id=$name></u></dd> \r\n";
}
function form_text($title,$name,$value,$size,$onjs){
return '<input type="text" name="'.$name.'" '.$size.' value="'.$value.'" '.$onjs.'>';
}
function form_password($title,$name,$value,$size,$onjs){
return '<input type="password" name="'.$name.'" '.$size.' '.$onjs.'>';
}
function form_checkbox($title,$name,$value,$size,$onjs){
return $title.'<input type="checkbox" name="'.$name.'[]" value="'.$value.'">';
}
function form_textarea($title,$name,$value,$size,$onjs){
return '<textarea name="'.$name.'" '.$size.' '.$onjs.'>'.$value.'</textarea>';
}
function form_hidden($title,$name,$value,$size,$onjs){
return '<input type="hidden" name="'.$name.'" value="'.$value.'">';
}
function form_radio($title,$name,$value,$size,$onjs){
return $title.'<input type="radio" name="'.$name.'" value="'.$value.'">';
}
}
#'类型type' => '标题title ,键值name ,默认value,尺寸size,鼠标事件onjs'
# 'select' => '(标题title) 选择国家|1|2|3|4|5,(键值name)sel,(默认value)0|1|2|3|4|5,
$formarray = array(
'text'=>'普通,name,123,size=80,',
'textarea'=>'详细内容,text,123456,rows=5 cols=60',
'password'=>'密码,pass,,',
'checkbox'=>'多选|my 1|my 2|my 3,box,0|1|2|3,',
'select'=>'选择国家|中国|美国|英国|德国|月球,sel,0|1|2|3|4|5',
'select1'=>'选择国家2|中国2|美国2|英国2|德国2|月球2,sel2,0|1|2|3|4|5',
'select3'=>'选择国家3|中国3|美国3|英国3|德国3|月球3,sel3,0|1|2|3|4|5',
'radio'=>'单选|1|2|3|4,rad,0|1|2|3|4,10',
'radio1'=>'单选2,rad1,1',
'hidden'=>',hid,1',
);
$_form = new htmlform();
echo $_form->_htmlform($formarray);
?>
作者: cyhchenz 发布时间: 2009-03-04
form表单设计制作简单了
作者: cyhchenz 发布时间: 2009-03-04
看看了哦 !!

作者: sanfe 发布时间: 2009-03-04
研究研究
直接扒FLEAPHP的不就完了
直接扒FLEAPHP的不就完了
作者: quanhaier 发布时间: 2009-03-04
加上YAML,更牛了

作者: lxylxy888666 发布时间: 2009-03-04
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28