首頁  >  文章  >  後端開發  >  PHP自動產生表單的Form類

PHP自動產生表單的Form類

WBOY
WBOY原創
2016-07-23 08:54:571368瀏覽
  1. //Form.php
  2. class form {
  3. var $layout=true;///是否使用表格版面配置
  4. var $action;//表單要提交到的URL
  5. var $method;
  6. var $enctype="";
  7. var $name="";
  8. var $id="";
  9. var $class="";
  10. function form($action,$method ="POST"){ //透過建構子初始化成員變數
  11. $this->action=$action;
  12. $this->method=$method;
  13. }
  14. function form_start(){
  15. $text="
  16. if($this->class!==""){
  17. $text.=" class="{$this->class}"";
  18. }
  19. if ($this->enctype!=="") {
  20. $text.=" enctype="{$this->enctype}"";
  21. }
  22. if($this->id!==""){
  23. $text.=" id="{$this->id}"";
  24. }
  25. if($this->name!==""){
  26. $text.=" name="{$this->name}"";
  27. }
  28. $text.=">n";
  29. if($this->layout==true){
  30. $text.="n";
  31. }
  32. return $text;
  33. }
  34. function form_end(){
  35. ifif ($this->layout==true) {
  36. $text="t
n";
  • $text.="n";
  • }else {
  • $text="n";
  • }
  • return $text;
  • }
  • }
  • }
  • //文字方塊函數
  • function form_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;
  • ;
  • ;
  • ;
  • ;
  • ;
  • }
  • //密碼框函數
  • function form_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;
  • }
  • //隱藏域函數
  • function form_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;
  • }
  • //檔案域函數
  • function form_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;
  • }
  • // 建構子
  • $i=0;
  • $text=array();
  • foreach ($label如$id=>$value){
  • $text[$i]="";
  • $text[$i].="";
  • $i ;
  • }
  • $label=$this->form_label($label_name,$label_for);
  • $form_item=$this->form_item($label, $text);
  • return $form_item;
  • }
  • //單選框函數
  • function form_radio($name,$label=array( ),$label_name,$label_for=""){
  • $i=0;
  • $text=array();
  • foreach ($label as $id= >$value){
  • $text[$i]="";
  • $text[$i].="";
  • $i ;
  • }
  • $label=$this->form_label($label_name,$label_for);
  • $form_item=$this->form_item($label,$text);
  • return $form_item;
  • }
  • //下拉式選單函數
  • function form_select($id,$name,$options=array(), $selected=false,$label_name,$label_for,$onchange=""){
  • if($onchange! ==""){
  • $text="";
  • $label=$this->form_label($label_name,$label_for);
  • $form_item=$this-> form_item($label,$text);
  • return $form_item;
  • }
  • //多選列表函數
  • function form_selectmul($id, $name,$size,$options=array() ,$label_name,$label_for){
  • $text=" n";
  • foreach ($options as $value=>$key){
  • $text.="tn";
  • }
  • $text.="n";
  • $label=$this->form_label($label_name, $label_for);
  • $form_item=$this->form_item($label,$text);
  • return $form_item;
  • }
  • / /按鈕函數
  • function form_button($id,$name,$type,$value,$onclick=""){
  • $text="
  • if($onclick! ==“”){
  • $text.=" onclick='{$onclick}'";
  • }
  • $text.=">".$value;
  • $text.="n";
  • if($this->佈局== true){
  • $form_item="nt {$text}nn";
  • }else {
  • $form_item=$text;
  • }
  • return $form_item;
  • > // 文字域函數
  • function form_textarea($id,$name,$cols,$rows,$label_name,$label_for,$value=""){
  • $text=" n";
  • $label=$this->form_label($label_name,$label_for);
  • $form_item=$this->form_item($label,$text);
  • return $form_item;
  • }
  • //文字標籤函數
  • function form_label($text,$for){
  • if($for! =="") {
  • $label="";
  • }else {
  • $label =$text.":";
  • }
  • return $label;
  • }
  • 函數form_item($form_label,$form_label,$form) {
  • switch ($this->layout){
  • case true:
  • $text="n" ;
  • $text. ="t";
  • $text.=$form_label;
  • $text.="
  • n";
  • $text.="t";
  • $text.=$form_text;
  • $text.=" td>n";
  • $text .="
  • n";
  • 中斷;
  • case false:
  • $text= $form_label;
  • $text.=$ form_text;
  • 線;
  • }
  • return $text;
  • }
  • echo $this->form_start();
  • foreach ($form_item as $item){
  • echo $item;
  • }
  • echo $this->form_end();
  • }
  • }
  • ;
    1. 浣跨
  • 陳述:
    本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn