Ver Mensaje Individual
  #5 (permalink)  
Antiguo 07/07/2012, 12:46
Avatar de Ronin46
Ronin46
 
Fecha de Ingreso: junio-2009
Mensajes: 398
Antigüedad: 15 años, 6 meses
Puntos: 8
Respuesta: Mejor forma de crear campos de un formulario

Vale, perfecto, precisamente el trozo de código que pusiste es justo lo que tenía en mente.
Tener una clase base Formulario (que sería abstracta) y luego cada formulario tener su propia clase que hereda de la clase base Formulario. y es en esa clase que hereda donde personalizar el formulario con sus campos y demás historias.

Lo que no entiendo es por qué tener el método Init y no hacerlo en el construct, tal que:
Código PHP:
class cForm {
         public function 
__construct()
         {
         }
}
 
class 
MiFormulario extends cForm
{
         public function 
__construct()
         {
                   
$this->addElement(new cText('blah'));
                   
$this->addElement(new cTextarea('blah2'));

                   
parent::__construct();
         }
}
 
$form = new MiFormulario(); 
Total, que si he entendido bien la clase quedaría así:
Código PHP:
class cForm
{
    private 
$Campos = array();

    public function 
addCampo ($Campo)
    {
        
$this->Campos[$Campo->GetNombre()] = $Campo;
    }

    public function 
DarValorCampo ($Campo$Valor)
    {
        
$this->Campos[$Campo]->SetValor $Valor;
    }
}

class 
cMiForm extends cForm
{
    public function 
__construct ()
    {
        
$this->addCampo(new cTextarea('MiTextarea'));
    }
}

$MiForm = new cMiForm();
$MiForm->DarValorCampo('MiTextarea''Blablabla'); 
__________________
http://www.controldegastos.com, acepto sugerencias para el sitio.
Repetir conmingo: "tengo que dedicar más tiempo a gozar de placer"