Yii Framework Forum: How to fill data in Dropdownlist from Database - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

How to fill data in Dropdownlist from Database Rate Topic: -----

#1 User is offline   Rahul Kumar 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 12
  • Joined: 29-January 11

Posted 08 April 2011 - 10:39 AM

Hello Folks,

I am not able to fill data from table (tbl_country).

I am creating a user registration form and I have country dropdownlist. I don't know how to fetch data from database and fill dropdownlist.

I used this link for help (http://yiitutorials....n-list-with-yii) but nothing happened. :(

Please help.
0

#2 User is offline   nickcv 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 152
  • Joined: 23-November 10

Posted 08 April 2011 - 12:35 PM

the guide you linked it's pretty much self explanatory.

what kind of error do you get?
sometimes it's just like teaching pigs how to fly

Posted Image
Posted Image looking for some invite keys? welcome on B4K!
0

#3 User is offline   Antonio Ramirez 

  • Elite Member
  • Yii
  • Group: Yii Dev Team
  • Posts: 1,433
  • Joined: 04-October 10

Posted 08 April 2011 - 02:05 PM

The guide is pretty good and if you followed should work. I have seen that you have a table prefix, have you set that up? Is your country pointing to '{{country}}' and table prefix on your config file 'main.php' set to 'tbl_'?

To fill out the dropdown is as easy as calling CHtml::listData(Country::model()->findAll()) on the data parameter of the dropdownlist function... make sure your object returns something...
¿How long would it take for you to understand that you own nothing in this world?

www.ramirezcobos.com


Posted Image
1

#4 User is offline   hameedhamdani 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 82
  • Joined: 20-October 12
  • Location:Islambad,Pakistan

Posted 16 November 2012 - 08:02 AM

View PostAntonio Ramirez, on 08 April 2011 - 02:05 PM, said:

The guide is pretty good and if you followed should work. I have seen that you have a table prefix, have you set that up? Is your country pointing to '{{country}}' and table prefix on your config file 'main.php' set to 'tbl_'?

To fill out the dropdown is as easy as calling CHtml::listData(Country::model()->findAll()) on the data parameter of the dropdownlist function... make sure your object returns something...

I am newbie . i want to register client information, it use drop down list for state from database table states.
My problem is that when i clik link to create client...a new dialog form open and displays nothing???????
when i remove the dropdown code it works fine..but i want to use dropdown in field of state of client form.

clientcontroller.php (actioncreate() snippet in controller file of client.php)
public function actionCreate()
{
$model=new client;

// Uncomment the following line if AJAX validation is needed
// $this->performAjaxValidation($model);

if(isset($_POST['client']))
{
$model->attributes=$_POST['client'];
if($model->save())
{
if (Yii::app()->request->isAjaxRequest)
{
echo CJSON::encode(array(
'status'=>'success',
'div'=>"Client successfully added"
));
exit;
}
else
$this->redirect(array('view','id'=>$model->id));
}
}

if (Yii::app()->request->isAjaxRequest)
{
echo CJSON::encode(array(
'status'=>'failure',
'div'=>$this->renderPartial('_form', array('model'=>$model), true)));
exit;
}
else
$this->render('create',array('model'=>$model,));
}



In client/admin.php (a link is to create client,only snippet is here ).

<?php echo CHtml::link('Add New State', "", // the link for open the dialog
array(
'style'=>'cursor: pointer; font-size:20px; text-decoration: underline;',
'onclick'=>"{addstate(); $('#dialogstate').dialog('open');}"));
?>
</div><!-- add-form -->

<?php
$this->beginWidget('zii.widgets.jui.CJuiDialog', array( // the dialog
'id'=>'dialogstate',
'options'=>array(
'title'=>'Create Number Assignment',
'autoOpen'=>false,
'modal'=>true,
'width'=>550,
'height'=>470,
),
));
?>

<div class="divForForm"></div>

<?php $this->endWidget();?>


<?php $this->widget('zii.widgets.grid.CGridView', array(
'id'=>'assignment-grid',
'dataProvider'=>$model->search(),
'filter'=>$model,
'columns'=>array(
'state',
'code',
'status',

array(
'class'=>'CButtonColumn',
),
),
));
?>



<script type="text/javascript">
// here is the magic
function addstate()
{
<?php echo CHtml::ajax(array(
'url'=>array('states/create'),
'data'=> "js:$(this).serialize()",
'type'=>'post',
'dataType'=>'json',
'success'=>"function(data)
{
if (data.status == 'failure')
{
$('#dialogstate div.divForForm').html(data.div);
// Here is the trick: on submit-> once again this function!
$('#dialogstate div.divForForm form').submit(addstate);
}
else
{
$('#dialogstate div.divForForm').html(data.div);
setTimeout(\"$('#dialogstate').dialog('close') \",3000);
}

} ",
))
?>;
return false;

}

</script>

plz help in dropdown list to generate?
0

#5 User is offline   parkerfrank 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 21
  • Joined: 02-October 12

Posted 19 November 2012 - 12:45 AM

you can do it like this

DataTable dtMaker = objMakers.GetAllMakers();
ddlMakerID.DataSource = dtMaker;
ddlMakerID.DataTextField = "MakerName";
ddlMakerID.DataValueField = "MakerId";
ddlMakerID.DataBind();
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users