mysql - How can I insert data from a table from sql into a dropdown list in zend framework 2? -



mysql - How can I insert data from a table from sql into a dropdown list in zend framework 2? -

i need insert multioptions dropdown list, options taken table database. created elements like:

$this->add(array( 'name' => 'company', 'type' => 'zend\form\element\select', //'multioptions'=> $options, 'options' => array( 'label' => 'company', ), 'attributes' => array( 'style' => "float:right;", ), ));

i want take dropdown list values in table in database. illustration have entity contacts , need take contact company in table named companies in database.

after reading on zend framework's site, tried using code:

$params = array( 'driver'=>'pdo_mysql', 'host'=>'localhost', 'username'=>'root', 'password'=>'', 'dbname' =>'mydatabase' ); $db = new \zend\db\adapter\adapter($params); $sql= new sql($db); $select = $sql->select(); $select ->from('companies') ->columns(array('id','company_name')) ->order(" 'company_name' asc");

i read on other sites utilize function:

$options = $sql->fetchpairs('select id, name country order name asc');

but seems doesn't exist anymore in zend framework 2.

please guys, give me hand. if code isn't , have improve idea, please tell me.

thanks in advance!

this quick , dirty answer, guess can started.

create servicefactory, should done in separate mill class instead of closure, still utilize closure - faster write ;) get config servicelocator have access db-params create default sql stuff retriefe value_options populate value_options using setvalueoptions($valueoptions) function of given form-element

module.php getserviceconfig()

return array( 'factories' => array( 'my-form-factory' => function($servicelocator) { $form = new my\form(); $config = $servicelocator->get('config'); $db = new \zend\db\auth\adapter\adapter($config['dbparams']); //or whatever named array key $sql = //do sql stuff // false array, should $sql result in given format $result = array('value' => 'label', 'value2' => 'label2'); $form->get('elementtopopulate')->setvalueoptions($result); homecoming $form; } ) );

somecontroller.php someaction()

$form = $this->getservicelocator()->get('my-form-factory'); homecoming new viewmodel(array( 'form' => $form ));

i hope gets started

mysql zend-framework2

Comments

Popular posts from this blog

web services - java.lang.NoClassDefFoundError: Could not initialize class net.sf.cglib.proxy.Enhancer -

Accessing MATLAB's unicode strings from C -

javascript - mongodb won't find my schema method in nested container -