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

como hacer para crear tablas con zend

Estas en el tema de como hacer para crear tablas con zend en el foro de Zend en Foros del Web. Buenas a todos!!!! Soy nuevo en Zend y no se como hacer tablas.. por ejemplo antes yo hacia esto: <table> <tr> <td></td> </tr> </table> ahora ...
  #1 (permalink)  
Antiguo 12/04/2011, 08:46
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 16 años
Puntos: 20
como hacer para crear tablas con zend

Buenas a todos!!!!
Soy nuevo en Zend y no se como hacer tablas..
por ejemplo antes yo hacia esto:

<table>
<tr>
<td></td>
</tr>
</table>

ahora yo eh ocupado zend from y creo los campos asi:

$this->addElement('text', 'ip', array (
'label' => 'Your is ip:',
'required' => true,
'filters' => array ('stringTrim'),
'validators' => array( 'Ip',
)

));
pero no se como crear tablas. Desde ya muchas gracias
  #2 (permalink)  
Antiguo 12/04/2011, 09:31
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: como hacer para crear tablas con zend

Algo así:
Código PHP:
Ver original
  1. public function indexAction()
  2. {
  3.     $form = new Zend_Form;
  4.     $form->addElement('text','ip',
  5.         array(
  6.             'label'=>'IP:',
  7.             'decorators'=>array(
  8.                 'ViewHelper',
  9.                 'Label',
  10.                 array(array('tdElement'=>'HtmlTag'), array('tag'=>'td')),
  11.                 array(array('trElement'=>'HtmlTag'), array('tag'=>'tr')),
  12.                 array(array('tableElement'=>'HtmlTag'), array('tag'=>'table')),
  13.             )
  14.         )
  15.     );
  16.     $this->view->form = $form;
  17. }
Crea:
Código HTML:
Ver original
  1. <form enctype="application/x-www-form-urlencoded" action="" method="post">
  2.     <dl class="zend_form">
  3.         <table>
  4.             <tr>
  5.                 <td>
  6.                     <label for="ip" class="optional">IP:</label>
  7.                     <input type="text" name="ip" id="ip" value="">
  8.                 </td>
  9.             </tr>
  10.         </table>
  11.     </dl>
  12. </form>
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 12/04/2011, 10:31
 
Fecha de Ingreso: marzo-2011
Mensajes: 107
Antigüedad: 13 años, 8 meses
Puntos: 22
Respuesta: como hacer para crear tablas con zend

Yo para mostrar datos simples hago una tabla en la vista (view) como si de codigo HTML simple se tratara y dentro los datos que estan en el controlador
Código HTML:
<table>
<tr>
   <td><?php echo $this->dato;?></td>
</tr>
</table> 
  #4 (permalink)  
Antiguo 12/04/2011, 11:33
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 11 meses
Puntos: 845
Respuesta: como hacer para crear tablas con zend

Supongo que te refieres a maquetar un formulario con tablas, bueno deberias leer primero sobre que son los decorators y luego buscar info sobre como implementarlos correctamente.
Aunque deberías tener en cuenta que usar tablas para maquetar cualquier cosa que no sean datos tabulados no es una buena practica.

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #5 (permalink)  
Antiguo 12/04/2011, 14:21
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 16 años
Puntos: 20
Respuesta: como hacer para crear tablas con zend

Muchas Gracias a todos, ahora estoy buscando info sobre decorators.
  #6 (permalink)  
Antiguo 13/04/2011, 09:00
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 16 años
Puntos: 20
Respuesta: como hacer para crear tablas con zend

Bien, Muchas gracias, ya me funciono, pero..... tengo una duda, yo hice esto:
Código PHP:
   $this->addElement('text','ip',
        array(
            
'label'=>'IP:',
            
'required' => true,
              
'Validators' => array ('Ip'),
            
'decorators'=>array(
                
'ViewHelper',
                
'Errors',
                
'Label',
               array(array(
'tdElement'=>'HtmlTag'), array('tag'=>'td')),
                array(array(
'trElement'=>'HtmlTag'), array('tag'=>'tr')),
                array(array(
'tableElement'=>'HtmlTag'), array('tag'=>'table')),
            )
        )
    ); 
y me quedo josha, pero como hago para si quiero agregar mas elementos dentro de esta tabla. Desde ya muchas gracias por todo.
  #7 (permalink)  
Antiguo 13/04/2011, 09:03
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 11 meses
Puntos: 845
Respuesta: como hacer para crear tablas con zend

Es difícil ayudarte sergio, sin ver la estructura que queres lograr, podes postear el html al que queres llegar ?
__________________
http://es.phptherightway.com/
thats us riders :)
  #8 (permalink)  
Antiguo 13/04/2011, 09:09
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 16 años
Puntos: 20
Respuesta: como hacer para crear tablas con zend

Ok disculpa por la mala expresion
tengo el siguiente archivo.:

Clientes.php que esta dentro de un form

yo quiero que me cree la siguente estructura:
Código HTML:
<form enctype="application/x-www-form-urlencoded" action="" method="post">
    <dl class="zend_form">
        <table>
            <tr>
                <td>
                    <label for="ip" class="optional">ip:</label>
                    <input type="text" name="ip" id="ip" value="">
                </td>
                <td>
                    <label for="ip" class="optional">nombre:</label>
                    <input type="text" name="nombre" id="nombre" value="">
                </td>
                <td>
                    <label for="ip" class="optional">apellido:</label>
                    <input type="text" name="apellido" id="apellido" value="">
                </td>



            </tr>
        </table>
    </dl>
</form> 
algo asi; se entiende ahora,??
  #9 (permalink)  
Antiguo 13/04/2011, 09:26
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: como hacer para crear tablas con zend

Bueno se me ocurren dos opciones, uno puedes en el primer addElement indicar la apertura solamente de table y tr y en el último indicar el cierre del tr y table. La otra es crear un addDisplayGroup y ahí añadir tanto la apertura como el cierre de los table y tr.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #10 (permalink)  
Antiguo 13/04/2011, 10:01
Avatar de _ssx  
Fecha de Ingreso: mayo-2003
Ubicación: mX
Mensajes: 683
Antigüedad: 21 años, 7 meses
Puntos: 60
Respuesta: como hacer para crear tablas con zend

Y ¿Por que no hacer bien las cosas con semantica mejor?

Código PHP:
dl class="zend_form">
        <
table


Estas incrustando una TABLA en un DL

Antes de Meterte a Zend Framework, estaría bien que revisaras un poco de websemantica y xhtml, vamos hay que hacer una web estandar accesible y bien hecha.

El elemento DL es para listas de definición "Vamos que tampoco se por que Zend en su Decorator lo hace así para su Zend FORM"

No obstante creo que deberías de hacer uso de "fieldset, labels y divs" para generar tu formulario, las tablas se hicieron para maquetar "datos tabulares" no para diseñar webapps.

Este link te dara claridad..

http://www.hotdesign.com/seybold/spa...ything_es.html
__________________
Escribe tu código de forma que refleje, y saque a relucir,lo mejor de tu carácter personal
www.oscararzola.com/blog
Principios de un programador
  #11 (permalink)  
Antiguo 13/04/2011, 10:06
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 11 meses
Puntos: 845
Respuesta: como hacer para crear tablas con zend

Para agrupar elementos comunes, tenes a Zend_Form_SubForm y Zend_From_DisplayGroup, la estructura que estas mostrando se lograría con algo así:

Código PHP:
Ver original
  1. class CustomForm extends Zend_Form
  2. {
  3.     public function init()
  4.     {
  5.         ...
  6.         $this->addDisplayGroup(array('ip', 'nombre', 'apellido', ), 'data');
  7.                
  8.         $this->setDecorators(array(
  9.             'FormElements',
  10.             array('HtmlTag', array('tag' => 'table')),
  11.             'Form'
  12.         ));
  13.         $this->setDisplayGroupDecorators(array(
  14.             array('FormElements'),
  15.             array('HtmlTag', array('tag' => 'tr'))            
  16.         ));            
  17.         $this->setElementDecorators(array(
  18.             'ViewHelper',
  19.             'Label',
  20.             'Errors',
  21.             array('HtmlTag', array('tag' => 'td'))                      
  22.         ));        
  23.     }
  24. }

Pero te vuelvo a repetir que no deberías utilizar tablas, podes googlear y buscar info sobre el tema.

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)

Última edición por masterpuppet; 13/04/2011 a las 10:11
  #12 (permalink)  
Antiguo 13/04/2011, 10:48
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 16 años
Puntos: 20
Respuesta: como hacer para crear tablas con zend

MMMMUUUCCCHHHASSS GGRRAACCCIIAAS!!!!!! estoy buscando info y me esta saliendo, gracias a todos, esto me esta ayudando un monton, y sale, por ahora lo eh probado con AddDisplayGroup. , nuevamente muchisimas gracias.!!!1

Etiquetas: frameworks-y-php-orientado-a-objetos, tablas
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 14:12.