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

mostrar datos consulta radiobox

Estas en el tema de mostrar datos consulta radiobox en el foro de Zend en Foros del Web. Hola otra vez. Quería saber si se puede hacer algo así y cómo sería: desde mi controlador muestro un formulario en la vista para que ...
  #1 (permalink)  
Antiguo 27/04/2013, 06:55
 
Fecha de Ingreso: abril-2013
Mensajes: 82
Antigüedad: 11 años
Puntos: 0
Pregunta mostrar datos consulta radiobox

Hola otra vez.

Quería saber si se puede hacer algo así y cómo sería:

desde mi controlador muestro un formulario en la vista para que el usuario introduzca los criterios de una reserva que desea hacer. En mi controlador llamo al modelo para que me devuelva una lista de las posibles reservas que el cliente puede hacer. Aquí viene mi duda: quiero que una vez que me devuelva el resultado de la consulta me aparezca en la pantalla un radiobox con los datos para que el usuario seleccione una y a partir de ahí yo obtenga los datos que ha seleccionado y poder hacer la reserva.

Quiero que me aparezca algo así una vez el usuario ha rellenado el formulario:




Y ya que estoy os voy a hacer otra consulta. ¿Es correcto que yo en mi clase modelo parcela haga esta consulta?

Código PHP:
Ver original
  1. public function parcelaslibres($fechaentrada,$fechasalida,$numeropersonas,$camping){
  2.  
  3.                             $db = Zend_Registry::get('mydb');
  4.                             $sql = 'SELECT DISTINCT  *
  5.                            FROM  parcela AS p, camping AS c
  6.                            WHERE (p.idcamping=c.idcamping) AND (p.idcamping='.$camping.') AND (p.idparcela NOT IN
  7.                            (SELECT idparcela
  8.                                FROM reserva AS r
  9.                                WHERE r.idparcela IS NOT NULL AND
  10.                                (('.$fechaentrada.'>r.fechaentrada AND '.$fechaentrada.'>r.fechasalida)OR
  11.                                ('.$fechasalida.'>r.fechaentrada AND '.$fechasalida.'<r.fechasalida) OR
  12.                                ('.$fechaentrada.'<r.fechaentrada AND '.$fechasalida.'>r.fechaentrada))))';
  13.  
  14.                             $rows = $db->fetchAll($sql);
  15.                             return $rows;
  16.  
  17.       }
  #2 (permalink)  
Antiguo 27/04/2013, 07:45
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: mostrar datos consulta radiobox

Y cual es el problema exactamente ?, por lo que muestras no es mas que filtrar de acuerdo a un criterio.

Sobre si es correcto, para mi no lo es, utilizar un registro para saltarse las dependencias esta lejos de ser algo deseable, pero bueno Zend 1.x a veces no te deja otra alternativa, pregunta, de quien extienden tus modelos ?
__________________
http://es.phptherightway.com/
thats us riders :)
  #3 (permalink)  
Antiguo 27/04/2013, 08:13
 
Fecha de Ingreso: abril-2013
Mensajes: 82
Antigüedad: 11 años
Puntos: 0
Respuesta: mostrar datos consulta radiobox

Extienden de Zend_Db_Table_Abstract.

Mi duda es que no sé cómo mostrar los datos que me devuelve la consulta de esa manera. ¿Me podríais orientar un poco o aconsejarme algún tutorial?
  #4 (permalink)  
Antiguo 27/04/2013, 08:39
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: mostrar datos consulta radiobox

Ok, por lo que veo de tu imagen deberías utilizar el paginador, tienes la referencia en la documentación http://framework.zend.com/manual/1.1...tor.usage.html

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #5 (permalink)  
Antiguo 28/04/2013, 06:06
 
Fecha de Ingreso: abril-2013
Mensajes: 82
Antigüedad: 11 años
Puntos: 0
Respuesta: mostrar datos consulta radiobox

Gracias por la ayuda, pero no es eso exactamente lo que necesito.

Ahora consigo mostrar los resultados de mi consulta a la base de datos, pero necesito que cuando seleccionen la que desea obtenga los parámetros y me vaya a otra acción.

De momento el código que tengo en mi controlador es este:

Código PHP:
Ver original
  1. echo"<table>
  2.                                        <tr>
  3.                                            <th>IdParcela</th>
  4.                                            <th>Tamaño</th>
  5.                                            <th>Sombra</th>
  6.                                            <th>Precio temp. Alta</th>
  7.                                            <th>Precio temp. Baja</th>
  8.                                            <th>Seleccionar</th>
  9.  
  10.                                        </tr>";
  11.                                         foreach ($rows as $d) :
  12.  
  13.                                             echo" <tr>";
  14.                                             echo"<td>".$d['idparcela']."</td>";
  15.                                             if($d['tamano']==2){
  16.                                                 echo"<td> Pequeño </td>";
  17.  
  18.                                             }else{
  19.                                                 if($d['tamano']==4){
  20.                                                 echo"<td> Mediano </td>";
  21.                                                 }else{
  22.                                                 echo"<td> Grande </td>";
  23.                                                 }
  24.                                             }
  25.                                             if($d['sombra']==0){
  26.                                                 echo"<td> NO </td>";
  27.  
  28.                                             }else{
  29.                                                 echo"<td> SI </td>";
  30.                                             }
  31.                                             echo"<td>".$d['precioalta']."</td>";
  32.                                             echo"<td>".$d['preciobaja']."</td>";
  33.                                             echo" <td>
  34.  
  35.                                            <a href="; echo "";
  36.                                             echo">Reservar</a>
  37.                                             </td>
  38.                                          
  39.                                            </tr>";
  40.                                          endforeach;
  41.                                    echo" </table>";


Ahora lo que necesito es que cuando pulse en Reservar me dirija a una nueva accion pasandome ciertos parametros. ¿Cómo lo hago? He probado con
Código PHP:
Ver original
  1. echo $this->url(array('controller' => 'cliente',
  2.                        'action' => 'confirmarreserva', 'id' => $d['idreserva']))

Pero me dice que no reconoce la funcion url().
  #6 (permalink)  
Antiguo 28/04/2013, 07:32
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: mostrar datos consulta radiobox

mmmm, según tu imagen tienes que paginar datos, en el link tienes como paginar, después mostrar los datos en una tabla es algo trivial, pregunta, el código lo tienes en un controlador ?, ese código va en una vista...

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #7 (permalink)  
Antiguo 28/04/2013, 08:17
 
Fecha de Ingreso: abril-2013
Mensajes: 82
Antigüedad: 11 años
Puntos: 0
Respuesta: mostrar datos consulta radiobox

Gracias por tu ayuda.

La imagen era solo un ejemplo, no tiene por qué ser igual. Lo que quería decir poniendo esa imagen es una forma de cómo quería mostrar los datos de la consulta. Según entiendo paginar los datos se hace cuando hay muchos datos que mostrar. No es mi caso, ya que no voy a tener muchos datos para mostrar.

Sí, el código lo he puesto en el controlador, porque sólo quiero que aparezca la tabla si hay datos para mostrar. Si lo pongo en la vista me aparece siempre y no quiero que sea así. Es la única solución que se me ha ocurrido con los pocos conocimientos que tengo de zend y php (estoy empezando a aprender).
  #8 (permalink)  
Antiguo 28/04/2013, 08:27
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: mostrar datos consulta radiobox

En ese caso comprueba en la vista si hay o no elementos:

Código HTML:
Ver original
  1. <?php if(count($rows)) : ?>
  2. <table>...</table>
  3. <?php else : ?>
  4. <p class="alert">...</p>
  5. <?php endif; ?>

lo que no puedes hacer es echo's desde un controlador.
__________________
http://es.phptherightway.com/
thats us riders :)
  #9 (permalink)  
Antiguo 28/04/2013, 08:55
 
Fecha de Ingreso: abril-2013
Mensajes: 82
Antigüedad: 11 años
Puntos: 0
Respuesta: mostrar datos consulta radiobox

Ahh vale gracias, desde ahí además ya sé como obtener la ruta relativa.

Muchas gracias!

Etiquetas: view
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:44.