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

[SOLUCIONADO] Problema con el formulario tupo entity y la manipulacion de la informacion devuelta.

Estas en el tema de Problema con el formulario tupo entity y la manipulacion de la informacion devuelta. en el foro de Symfony en Foros del Web. Siento hacer tantas preguntas. Pero llevo 2 meses solo con esto de symfony y se me junta con conocimientos muy limitados de php y hay ...
  #1 (permalink)  
Antiguo 29/05/2013, 10:48
 
Fecha de Ingreso: diciembre-2011
Mensajes: 134
Antigüedad: 12 años, 10 meses
Puntos: 5
Problema con el formulario tupo entity y la manipulacion de la informacion devuelta.

Siento hacer tantas preguntas. Pero llevo 2 meses solo con esto de symfony y se me junta con conocimientos muy limitados de php y hay problemas que igual son tonterias pero de verdad no se por donde y estoy horas detras de ellos.

Vereis. estoy haciendo un test sobre la adiccion al tabaco.

en el test incluyo 3 campos. uno recoge los cigarros que fuma al dia, otro la edad que comenzo a fumar y el tercero la marca habitual que consume. este tercero carga un combo, a partir de la base de datos, con todas las marcas disponibles.

Código PHP:


              
->add('cigarrillosDia''choice', array(
                
'choices' => array_combine(range(140), range(140)),
                
'expanded' => false,
                
'multiple' => false,
                ))

            ->
add('edadFumar''choice', array(
                
'choices' => array_combine(range(1090), range(1090)),
                
'expanded' => false,
                
'multiple' => false,
                ))

            ->
add('marcas''entity', array(
                
'class' => 'SustanciasBundle:Marca',
                   
'property' => 'nombre',
                   
'expanded' => false,
                
'multiple' => false,
                )) 

mi objetivo es calcular cuanto dinero gastara en distintos periodos de tiempo (1 mes fumando, 1 años fumando , desde que empezo a fumar .... )

ok. para ello hago lo siguiente (por ejemplo para saber cuanto gasta en 1 dia )


Código PHP:
$resultado["dineroTabaco1"] = $resultado["cantidadTabaco1"] * $this->obtenerPrecioCigarro($data["marcas"]); 
añado al array que luego enviare a la plantilla un campo "dineroTabaco1" y este campo esta compuesto por el tabaco que fuma en un dia (ya registrado anteriormente en el array $ resultado) multiplicado por el precio de esa marca.


el precio lo pretendo obtener pasandole la marca de tabaco a esta funcion para hacer una consulta a la base de datos.


Código PHP:

private function obtenerPrecioCigarro($marca)
    {

        
$em $this->getDoctrine()->getManager();
        
$consulta $em->createQuery('SELECT m.precio FROM SustanciasBundle:Marca m WHERE m.nombre = :nombre');
        
$consulta->setParameter('nombre'$marca);
        
$precio $consulta->getResult();

                
                
//se divide entre 20 porque se almacena el precio de la caja de 20 cigarros
        
return $precio[0]["precio"]/20;


    } 

el problema ha venido cuando me he dado cuenta que $data["marcas"] es un objeto.



alguien me entiende? alguien sabe como ayudarme ?

Última edición por amadeo123; 29/05/2013 a las 11:15
  #2 (permalink)  
Antiguo 29/05/2013, 16:18
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 10 meses
Puntos: 845
Respuesta: Problema con el formulario tupo entity y la manipulacion de la informacion

No puedes acceder al precio a través del accessor del objeto directamente ?
__________________
http://es.phptherightway.com/
thats us riders :)
  #3 (permalink)  
Antiguo 29/05/2013, 16:57
 
Fecha de Ingreso: diciembre-2011
Mensajes: 134
Antigüedad: 12 años, 10 meses
Puntos: 5
Respuesta: Problema con el formulario tupo entity y la manipulacion de la informacion

Cita:
Iniciado por masterpuppet Ver Mensaje
No puedes acceder al precio a través del accessor del objeto directamente ?
a que te refieres, a algo asi

$objeto->precio;

si es esto a lo que te refieres no me deja, ya que son atributos privados. (o al menos eso me ha dicho el mensaje de error)
  #4 (permalink)  
Antiguo 29/05/2013, 17:40
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 10 meses
Puntos: 845
Respuesta: Problema con el formulario tupo entity y la manipulacion de la informacion

Acaso no tienes un getPrecio en esta entidad ?
__________________
http://es.phptherightway.com/
thats us riders :)
  #5 (permalink)  
Antiguo 30/05/2013, 00:15
 
Fecha de Ingreso: diciembre-2011
Mensajes: 134
Antigüedad: 12 años, 10 meses
Puntos: 5
Respuesta: Problema con el formulario tupo entity y la manipulacion de la informacion

De nuevo mil gracias. Efectivamente el problema era que pretendia obtener el campo sin usar el metodo getter .

la forma correcta seria asi (por si alguien topa en lo mismo que yo)

$objeto->getPrecio();

y la funciona que he creado yo no sirve para nada. directamente se multiplica los cigarros fumados por $objeto->getPrecio();

Menuda rabia me da quedarme enganchado en cosas tan simples ..., al menos se que estas cosas ya no se me olvidan.

Última edición por amadeo123; 30/05/2013 a las 00:21

Etiquetas: entity, formulario, manipulacion
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 15:29.