Thanks for the reply, Bart.
I ended up doing this and it worked:
$db_readPeopleAndGroups = Zend_Db::factory($config->db_readPeopleAndGroups);
$db_readPeopleAndGroups->getConnection();
$queryResults = $db_readPeopleAndGroups->fetchPairs("SELECT id, last_name
FROM person ORDER BY last_name");
$results = $queryResults;
$tpFacultyView->setLabel($config->tpFacultyView)
->addMultiOption('', 'Choose Faculty')
->addMultiOptions($results)
Although, I keep your idea in mind in case I ever need it for anything else.
I didn't even think about the array_merge option. :-)
Have a great day.
Tina
Bart McLeod wrote:
>
> I use this and it works:
> $shop = new WebShop();
> $options = array();
> $options[0] = '----- Select category -----';
> $options = array_merge($options, $shop->getCategories());
> $select->setMultiOptions($options);
> So in your case, you will probably have to use:
>
> array_unshift($results, array(0=>'Choose Faculty'));
>
> instead of
>
> array_unshift($results, array(''=>'Choose Faculty'));
>
> Regards,
>
> Bart McLeod
>
>
>
> Tina Matter schreef:
>> Hello -
>>
>> I am selecting data from a database to populate a select box. I am
>> using
>> the fetchPairs database option, so my first element is the value and the
>> second element is the display value.
>>
>> I also want a default option that has a null value at the top of my
>> select
>> box.
>> So here is my code:
>>
>> $db_readPeopleAndGroups =
>> Zend_Db::factory($config->db_readPeopleAndGroups);
>> $db_readPeopleAndGroups->getConnection();
>> $queryResults = $db_readPeopleAndGroups->fetchPairs("SELECT id, last_name
>> FROM person ORDER BY last_name");
>> $results = $queryResults;
>>
>> // array_unshift adds elements to the beginning of an array
>> array_unshift($results, array(''=>'Choose Faculty'));
>>
>> // Faculty Plan View Select Box
>> $tpFacultyView = new Zend_Form_Element_Select('tpFacultyView');
>> $tpFacultyView->setLabel($config->tpFacultyView)
>> ->setMultiOptions($results)
>>
>>
>> However, when I display my form, Zend_Form puts <optgroup> tags around
>> the
>> "Choose Faculty" element that I added to the beginning of my array.
>>
>> Here is a subset of what my source looks like:
>>
>> <select name="tpFacultyView" id="tpFacultyView">
>> <optgroup label="0">
>> <option value="" label="Choose Faculty">Choose Faculty</option>
>> </optgroup>
>> <option value="1" label="Doe, John">Doe, John</option>
>> <option value="2" label="Johnson, Julie">Johnson, Julie</option>
>> <option value="3" label="Smith, Joe">Smith, Joe</option>
>> </select>
>>
>> Is there any way to get rid of these <optgroup> tags? For some reason,
>> when
>> clicking on my select box, I see the '0' above the "Choose Faculty"
>> option
>> (which is also indented from the other options).
>>
>> If there's a better way to add the "Choose Faculty" option so that I
>> don't
>> get the <optgroup> tags, that would be great too.
>>
>> Any help is appreciated.
>>
>> Thanks bunches.
>> Tina Matter
>>
>
>
--
View this message in context:
http://www.nabble.com/Zend_Form---Select-Box-Question-tp18139414p18153820.html
Sent from the Zend Framework mailing list archive at Nabble.com.