Foros del Web » Programando para Internet » PHP » Symfony »

recorrer campos formulario en controlador

Estas en el tema de recorrer campos formulario en controlador en el foro de Symfony en Foros del Web. buenas tardes. Tengo un formulario funciona correctamente. Necesito en el método del formulario recorrer los campos de este .. osea necesito traer el nombre de ...
  #1 (permalink)  
Antiguo 14/04/2015, 17:13
 
Fecha de Ingreso: mayo-2006
Ubicación: Bogotá
Mensajes: 2.061
Antigüedad: 18 años, 6 meses
Puntos: 50
recorrer campos formulario en controlador

buenas tardes.

Tengo un formulario funciona correctamente.

Necesito en el método del formulario recorrer los campos de este .. osea necesito traer el nombre de cada uno de sus campos... como seria?

Requiero algo así como "es un ejemplo para hacerme entender":

Código PHP:
foreach($form->getcampo() as $campo)
echo 
$campo->getNombre(); 
Gracias!
  #2 (permalink)  
Antiguo 14/04/2015, 17:30
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 11 años, 4 meses
Puntos: 379
Respuesta: recorrer campos formulario en controlador

Tu formulario esta relacionado a un Entidad ? Si no es así puedes publicar el código relacionado ?
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #3 (permalink)  
Antiguo 15/04/2015, 09:15
 
Fecha de Ingreso: mayo-2006
Ubicación: Bogotá
Mensajes: 2.061
Antigüedad: 18 años, 6 meses
Puntos: 50
Respuesta: recorrer campos formulario en controlador

buenos dias


El formulario esta creado en un formtype y no estarelacionado directamente a una entidad


Código PHP:
class ActivitiesType extends AbstractType
{

    public function 
buildForm(FormBuilderInterface $builder, array $options)
    {
        
$clsetiquetas = new TranslationExtension($this->em);  
        
$builder
        
->add('campo1''checkbox', array(
                
'mapped' => false,
                
'required'    => false,
                
'attr' => array(
                    
'value' => 1
                
),
        ))
        ->
add('campo2''text', array(
                
'mapped' => false,
                
'required'    => false,
                
'attr' => array(
                    
'disabled' => 'disabled',
                ),
        ))
        ->
add('campo3''checkbox', array(
                
'mapped' => false,
                
'required'    => false,
                
'attr' => array(
                    
'value' => 2
                
),
        )); 
        ->
add('campo4''checkbox', array(
                
'mapped' => false,
                
'required'    => false,
                
'attr' => array(
                    
'value' => 2
                
),
        ));    
        ->
add('campo5''checkbox', array(
                
'mapped' => false,
                
'required'    => false,
                
'attr' => array(
                    
'value' => 2
                
),
        ));         
    }
    
    
/**
     * @param OptionsResolverInterface $resolver
     */
    
public function setDefaultOptions(OptionsResolverInterface $resolver)
    {
        
$resolver->setDefaults(array(
            
//'data_class' => 'AppBundle\Entity\ToolActivities'
        
));
    }

    
/**
     * @return string
     */
    
public function getName()
    {
        return 
'formActivities';
    } 
  #4 (permalink)  
Antiguo 15/04/2015, 11:18
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 11 años, 4 meses
Puntos: 379
Respuesta: recorrer campos formulario en controlador

Ya veo
Código PHP:
Ver original
  1. foreach($form->getData() as $data)
  2. {
  3.     dump($data);
  4. }
Otras opciones es tener un objeto que funcione como una entidad y recorrer los valores de ese objeto.
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.

Etiquetas: campos, controlador, formulario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:20.