php表单自动生成,PHP自动生成表单代码分享

Form.php

//Form.php

classform{

var$layout=true;//是否使用表格布局

var$action;//表单要提交到的URL

var$method;

var$enctype="";

var$name="";

var$id="";

var$class="";

functionform($action,$method="POST"){//通过构造函数初始化成员变量

$this->action=$action;

$this->method=$method;

}

functionform_start(){

$text="action}"method="{$this->method}"";

if($this->class!==""){

$text.="class="{$this->class}"";

}

if($this->enctype!==""){

$text.="enctype="{$this->enctype}"";

}

if($this->id!==""){

$text.="id="{$this->id}"";

}

if($this->name!==""){

$text.="name="{$this->name}"";

}

$text.=">n";

if($this->layout==true){

$text.="

}

return$text;

}

functionform_end(){

if($this->layout==true){

$text="t

n";

$text.="n";

}else{

$text="n";

}

return$text;

}

//文本框函数

functionform_text($name,$id,$label_name,$label_for,$value=""){

$text="

$text.="id="{$id}"";

if(isset($value)){

$text.="value="{$value}"";

}

$text.="/>n";

$label=$this->form_label($label_name,$label_for);

$form_item=$this->form_item($label,$text);

return$form_item;

}

//密码框函数

functionform_passwd($name,$id,$label_name,$label_for,$value=""){

$text="

$text.="id="{$id}"";

if(isset($value)){

$text.="value="{$value}"";

}

$text.="/>n";

$label=$this->form_label($label_name,$label_for);

$form_item=$this->form_item($label,$text);

return$form_item;

}

//隐藏域函数

functionform_hidden($name,$id,$label_name,$label_for,$value=""){

$text="

if(isset($value)){

$text.="value="{$value}"";

}

$text.="/>n";

$label=$this->form_label($label_name,$label_for);

$form_item=$this->form_item($label,$text);

return$form_item;

}

//文件域函数

functionform_file($name,$id,$label_name,$label_for,$size=""){

$text="

$text.="id="{$id}"";

if(isset($size)){

$text.="size="{$size}"";

}

$text.="/>n";

$label=$this->form_label($label_name,$label_for);

$form_item=$this->form_item($label,$text);

return$form_item;

}

//复选框函数

functionform_checkbox($name,$label=array(),$label_name,$label_for=""){

$i=0;

$text=array();

foreach($labelas$id=>$value){

$text[$i]="";

$text[$i].="{$value}";

$i++;

}

$label=$this->form_label($label_name,$label_for);

$form_item=$this->form_item($label,$text);

return$form_item;

}

//单选框函数

functionform_radio($name,$label=array(),$label_name,$label_for=""){

$i=0;

$text=array();

foreach($labelas$id=>$value){

$text[$i]="";

$text[$i].="{$value}";

$i++;

}

$label=$this->form_label($label_name,$label_for);

$form_item=$this->form_item($label,$text);

return$form_item;

}

//下拉菜单函数

functionform_select($id,$name,$options=array(),$selected=false,$label_name,$label_for,$οnchange=""){

if($onchange!==""){

$text="n";

}

else{

$text="n";

}

foreach($optionsas$value=>$key){

if($selected==$value){

$text.="t{$key}n";

}elseif($selected===false){

$text.="t{$key}n";

}

}

$text.="";

$label=$this->form_label($label_name,$label_for);

$form_item=$this->form_item($label,$text);

return$form_item;

}

//多选列表函数

functionform_selectmul($id,$name,$size,$options=array(),$label_name,$label_for){

$text="n";

foreach($optionsas$value=>$key){

$text.="t{$key}n";

}

$text.="n";

$label=$this->form_label($label_name,$label_for);

$form_item=$this->form_item($label,$text);

return$form_item;

}

//按钮函数

functionform_button($id,$name,$type,$value,$οnclick=""){

$text="

if($onclick!==""){

$text.="οnclick='{$onclick}'";

}

$text.=">".$value;

$text.="n";

if($this->layout==true){

$form_item="

nt{$text}nn";

}else{

$form_item=$text;

}

return$form_item;

}

//文本域函数

functionform_textarea($id,$name,$cols,$rows,$label_name,$label_for,$value=""){

$text="{$value}n";

$label=$this->form_label($label_name,$label_for);

$form_item=$this->form_item($label,$text);

return$form_item;

}

//文字标签函数

functionform_label($text,$for){

if($for!==""){

$label="{$text}:";

}else{

$label=$text.":";

}

return$label;

}

functionform_item($form_label,$form_text){

switch($this->layout){

casetrue:

$text="

n";

$text.="t";

$text.=$form_label;

$text.="n";

$text.="t

";

$text.=$form_text;

$text.="

n";

$text.="

n";

break;

casefalse:

$text=$form_label;

$text.=$form_text;

break;

}

return$text;

}

functionCreateForm($form_item=array()){

echo$this->form_start();

foreach($form_itemas$item){

echo$item;

}

echo$this->form_end();

}

}

?>

使用示例:

-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

用户登录

require_once("form.php");

$form=newform($_SERVER['PHP_SELF']);//提交到本页

$form->layout=false;//不使用表格布局,大家可以把这句注释掉看结果有何不同

$name=$form->form_text("userid","userid","用户名","userid");

$passwd=$form->form_passwd("passwd","passwd","密码","passwd");

$submit=$form->form_button("","submit","submit","登录");

$form_item=array($name,$passwd,$submit);

$form->CreateForm($form_item);

?>

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单的PHP Web表单生成器的代码示例: ```php <?php // 定义表单元素数组 $form_elements = array( 'text' => 'Text Input', 'textarea' => 'Textarea', 'select' => 'Select Box', 'radio' => 'Radio Buttons', 'checkbox' => 'Checkboxes' ); // 处理表单提交 if ($_SERVER['REQUEST_METHOD'] == 'POST') { // 获取表单元素类型 $element_type = $_POST['element_type']; // 获取表单元素名称 $element_name = $_POST['element_name']; // 获取表单元素选项 $element_options = $_POST['element_options']; // 根据表单元素类型生成相应的HTML代码 switch ($element_type) { case 'text': $html = '<input type="text" name="' . $element_name . '">'; break; case 'textarea': $html = '<textarea name="' . $element_name . '"></textarea>'; break; case 'select': $html = '<select name="' . $element_name . '">'; foreach ($element_options as $option) { $html .= '<option value="' . $option . '">' . $option . '</option>'; } $html .= '</select>'; break; case 'radio': foreach ($element_options as $option) { $html .= '<input type="radio" name="' . $element_name . '" value="' . $option . '">' . $option . '<br>'; } break; case 'checkbox': foreach ($element_options as $option) { $html .= '<input type="checkbox" name="' . $element_name . '[]" value="' . $option . '">' . $option . '<br>'; } break; default: $html = ''; break; } } ?> <!-- 显示表单 --> <form method="post"> <label for="element_type">Select Element Type:</label> <select name="element_type" id="element_type"> <?php foreach ($form_elements as $key => $value) { ?> <option value="<?php echo $key; ?>"><?php echo $value; ?></option> <?php } ?> </select> <br> <label for="element_name">Element Name:</label> <input type="text" name="element_name" id="element_name"> <br> <label for="element_options">Element Options:</label> <input type="text" name="element_options[]" id="element_options"> <br> <input type="submit" value="Generate"> </form> <!-- 显示生成的表单元素 --> <?php if (isset($html)) { ?> <h2>Generated Element:</h2> <?php echo $html; ?> <?php } ?> ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值