Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 获取控制器中下拉列表的值_Php_Mysql_Yii - Fatal编程技术网

Php 获取控制器中下拉列表的值

Php 获取控制器中下拉列表的值,php,mysql,yii,Php,Mysql,Yii,如何将\u表单页面中下拉列表的选定值获取到我的控制器页面 _form page <?php echo $form->dropDownList($model,'prd_id',CHtml::listData(Category::model()->findAll(), 'cat_id','category')) ?> \u表单页 我想在我的Categorycontroller页面的下拉列表中获取所选项目的值。试试看 <?php echo CHtml:

如何将
\u表单页面
中下拉列表的选定值获取到我的控制器页面

_form page

    <?php echo  $form->dropDownList($model,'prd_id',CHtml::listData(Category::model()->findAll(),
'cat_id','category')) ?>
\u表单页
我想在我的
Categorycontroller
页面的下拉列表中获取所选项目的值。

试试看

  <?php echo CHtml::activeDropDownList($model,'prd_id',CHtml::listData(Category::model()-  >findAll(),array(
   'prompt'=>'Select',
            'ajax' => array(
            'type'=>'POST',
            'url'=>Categorycontroller::createUrl('action'),
            )
        )); ?>

听起来您需要AJAX:

如果是相关下拉列表,请尝试以下操作

即使不是依赖下拉列表,将选择传递给控制器时也适用相同的原则

echo CHtml::dropDownList('country_id','', array(1=>'USA',2=>'France',3=>'Japan'),
array(
'ajax' => array(
'type'=>'POST', //request type
'url'=>CController::createUrl('currentController/dynamiccities'), //url to call.
//Style: CController::createUrl('currentController/methodToCall')
'update'=>'#city_id', //selector to update
//'data'=>'js:javascript statement' 
//leave out the data key to pass all form values through
))); 

您可以在控制器中使用此选项:
在$u POST[MODELNAME]之后首先使用var\u dump 然后使用


你想在表单提交之前得到它吗?然后使用ActiveDropDown通常我们会得到这样的
$\u POST[MODELNAME]['prd\u id']
$rs = isset($_POST[MODELNAME]['prd_id']) ? $_POST[MODELNAME]['prd_id'] : array();
$value = (!is_array($rs)) ? explode(',', $rs) : $rs;