PHP Classes

File: class_form_001.php3

Recommend this page to a friend!
  Classes of Devta Singh   Form auto Generator   class_form_001.php3   Download  
File: class_form_001.php3
Role: ???
Content type: text/plain
Description: Class Form
Class: Form auto Generator
Author: By
Last change:
Date: 23 years ago
Size: 3,857 bytes
 

Contents

Class file image Download
<? //llama al fichero que define la clase require("class_campo_001.php3"); class Form { var $plantilla; //el nombre function Inicializa_Form($datos,$nombre,$metodo,$accion,$submit,$reset,$trans){ global $codigo; require("tags.php3"); if(is_array($trans)){ while (list($clave,$valor)=each($trans)){ $otros_campos.="\n<INPUT TYPE=\"HIDDEN\" NAME=\"$clave\" VALUE=\"$valor\">"; } } //inicia el formulario if(!$this->plantilla){ $codigo="<FORM NAME=\"$nombre\" METHOD=\"$metodo\" ACTION=\"$accion\">\n"; } else { $inicio_form="<FORM NAME=\"$nombre\" METHOD=\"$metodo\" ACTION=\"$accion\">\n"; } $n=sizeof($datos); //cuenta el número de elementos del array de datos (numero de campos) for($c=0;$c<$n;$c++){ //hace un bucle por cada uno de los datos (campos) $campo[$c]=new Campo; //Crea el objeto campo[$c] $campo[$c]->Inicializa_campo($datos[$c]); //crea los campos a partir de los datos del array if(!$this->plantilla){ //sin plantilla #print "1SIN PLANTILLA"; $campo[$c] -> poner_rotulos=1; //dibuja el campo correspondiente $campo[$c] -> poner_br=1; //dibuja el campo correspondiente $codigo.=$campo[$c] -> volcado(); //dibuja el campo correspondiente } else { //con plantilla #print "1CON PLANTILLA"; $lista_campos[$c]= $campo[$c]->volcado_campo(); //lista el campo actual $lista_rotulos[$c]= $campo[$c]->rotulo; //lista los rótulos } $escadena[$c]=$datos[$c]["es_cadena"];//archiva los datos de es_cadena en un array $nombres[$c]=$datos[$c]["nombre"];//archiva los nombres de campo en un array //detecta el tipo de campo y lo incluye en una lista de valores $tipocampo[$c]=$datos[$c]["tipo"]; $tipo[$c]=$campo[$c]->tipo_de_campo(); } if($this->plantilla!=""){ //si se está usando una plantilla #print "2CON PLANTILLA"; //abre la plantilla $original=file("$this->plantilla"); $final=implode("",$original); $p=sizeof($original); //hace un bucle para todos los campos for($c=0;$c<$n;$c++){ //recorre la plantilla //haciendo una sustitucion de la cadena de la plantilla //por la cadena del campo $tag=$tag_pre_campo.($c+1).$tag_post_campo; $rot=$tag_pre_rotulo.($c+1).$tag_post_rotulo; $final=str_replace($tag, $lista_campos[$c], $final); $final=str_replace($rot, $lista_rotulos[$c], $final); }//fin del campo[$c] //recompone en una sola cadena el array de lineas } else { } $estipo=implode(",",$tipo); $escadena=implode(",",$escadena); $nombres=implode(",",$nombres); $estipo="\n<INPUT TYPE=\"HIDDEN\" NAME=\"_frm_estipo\" VALUE=\"$estipo\">"; $escadena="\n<INPUT TYPE=\"HIDDEN\" NAME=\"_frm_escadena\" VALUE=\"$escadena\">"; $nombres="\n<INPUT TYPE=\"HIDDEN\" NAME=\"_frm_nombres\" VALUE=\"$nombres\">"; if($submit){ $enviar="\n<INPUT TYPE=\"SUBMIT\" NAME=\"mandar\" VALUE=\"$submit\">"; } if($reset){ $borrar="\n<INPUT TYPE=\"RESET\" NAME=\"borrar\" VALUE=\"$reset\">"; } if(!$this->plantilla){ $codigo.=$otros_campos.$nombres.$escadena.$estipo.$enviar.$borrar."\n</FORM>\n";//cierra el formulario } else { $inicio_form="<FORM NAME=\"$nombre\" METHOD=\"$metodo\" ACTION=\"$accion\">\n"; $fin_form=$otros_campos.$nombres.$escadena.$estipo."\n</FORM>\n";//cierra el formulario $final=str_replace($tag_inicio_form, $inicio_form, $final); $final=str_replace($tag_fin_form, $fin_form, $final); $final=str_replace($tag_enviar, $enviar, $final); $final=str_replace($tag_borrar, $borrar, $final); $codigo=$final; } } function volcado1(){ global $codigo; return($codigo); } }//fin de la clase Form ?>