In this article, you will know how you can extend select form element that comes with Zend Framework, to be easily filled with data from your database table. We want to be able to easily fill select elements from database table with less repetitive code. It's already easy to fill select elements with database data out of the box:
$db = Zend_Db_Table_Abstract::getDefaultAdapter();
$options = $db->fetchPairs(
$db->select()->from('table_name', array('id', 'display_field'))
->order('some_field ASC'), 'id');
$form->getElement('someelement')->AddMultiOptions($options);
In the snippet above you get default database adapter, then simply fetch all items from 'table_name' ordering by 'some_field', and you see we fetch them as pairs binding to 'id' field. This basically means that the result of fetchPairs returns associative array of items. For select control options, we just want two fields: one for the display and one for the values ('id' is the value field, 'display_field' is for display)
But what if you have many database aware select controls? How is it possible to extend Zend Framework select elements with an easy method to populate data from database table?
Read on for details.
php_value magic_quotes_gpc off
Apart from being GZIP'ed, the CSS and Javascript files can be compressed (minified) by stripping unnecessary comments and whitespaces. This allows to save even more on bandwidth and produce faster webpages than before.
It is important for a website to have GZIP compression enabled. It is able to make your pages smaller up to 7 times (!). The GZIP compression is an Apache server's feature.