<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>xavier sarrate &#187; php</title>
	<atom:link href="http://www.xaviersarrate.com/index.php/tag/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.xaviersarrate.com</link>
	<description>siguiendo la pista a los cambios en la red (y fuera de ella =)</description>
	<lastBuildDate>Mon, 11 Oct 2010 09:16:11 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Marcar checkbox en Zend_Form_Element_MultiCheckbox</title>
		<link>http://www.xaviersarrate.com/index.php/2008/04/13/marcar-checkbox-zend_form_element_multicheckbox/</link>
		<comments>http://www.xaviersarrate.com/index.php/2008/04/13/marcar-checkbox-zend_form_element_multicheckbox/#comments</comments>
		<pubDate>Sun, 13 Apr 2008 19:53:25 +0000</pubDate>
		<dc:creator>xavi</dc:creator>
				<category><![CDATA[1]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[zend framework]]></category>

		<guid isPermaLink="false">http://www.xaviersarrate.com/?p=320</guid>
		<description><![CDATA[Llevo unos días impregnándome de la Zend Framework. Para practicar lo que aprendo, reviso el cms perpetuo que cada vez es más &#8220;profesional&#8221; (o eso me parece =). Esta tarde los multicheckbox me han retado a un pulso y casi vencen (por los pelos los mando a tomar por saco). 
Trabajar con Zend es en [...]


No related posts.]]></description>
			<content:encoded><![CDATA[<p>Llevo unos días impregnándome de la Zend Framework. Para practicar lo que aprendo, reviso el cms perpetuo que cada vez es más &#8220;profesional&#8221; (o eso me parece =). Esta tarde los multicheckbox me han retado a un pulso y casi vencen (por los pelos los mando a tomar por saco). </p>
<p>Trabajar con Zend es en general bastante sencillo, una vez sabes cómo (Santi creo que es un tanto escéptico con el tiempo invertido y el resultado obtenido =). En los últimos días intento aprender el funcionamiento de Zend_Form (la documentación no está del todo bien y se encuentran pocos tutoriales en la red). La cosa parecía casi dominada hasta que han aparecido los checkbox múltiples.</p>
<p>Crearlos es bastante sencillo:</p>
<pre>
$groups =  new Zend_Form_Element_MultiCheckbox('groups');

    foreach($groups as $group){
       $groups -> addMultiOption($group -> id, $group -> name);
    }
    $form -> addElement($groups);
</pre>
<p>Y ya tenemos un listado de checkbox, con sus label y todo =) Lo complicado viene cuando lo que quieres es marcar alguno por defecto (o si quieres preparar un formulario de modificación y necesitas arrastrar las casillas marcadas en la BBDD). Zend_Form_Element_MultiCheckbox, a diferencia de Zend_Form_Element_Checkbox, ¡¡¡no ofrece la posibilidad de marcar un checkbox!!! </p>
<p>Después de buscar y preguntar he empezado a seguir la estructura de llamadas y clases hasta encontrar con la solución:</p>
<pre>
  $form -> groups -> setValue($checkedGroups);
</pre>
<p>Donde $checkedGroups es un array con los ids que queremos marcar. Así de fácil y tonto, pero cuando no se sabe la respuesta, es lo que pasa. El nombre del método no ayudaba demasiado (en singular cuando se pasa un array y ¿¿setValue para indicar los marcados en lugar de los valores???) y el hecho de que se trate de la 6 o 7 clase de la jerarquía por encima de Zend_Form_Element_MultiCheckbox tampoco&#8230; =P</p>
<p>Nota: Vista la falta de documentación estoy pensando en preparar algo&#8230; a ver si tengo tiempo =/</p>


<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://www.xaviersarrate.com/index.php/2008/04/13/marcar-checkbox-zend_form_element_multicheckbox/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

