0

我想将一个变量(选择框 id,来自数据库)从控制器传递给视图,但不知道该怎么做。

4

3 回答 3

0

假设您有一个名为article的控制器和一个方法索引,那么在您的视图中您将拥有:

<?php 
echo form_open('article/index');
echo form_input('text');
echo form_close;
?>

在您的控制器中,例如:

public function index() 
{
   if($this->input->post()) { 
      $this_is_catched_text = $_POST['text'];
   }
}

这是没有验证和其他东西的。只要你明白它是如何工作的。

于 2013-03-16T21:03:32.997 回答
0

您最初的问题不是那么清楚,但是在阅读了评论后,您可以做到这一点。

控制器

//whatever function you're using to populate your original array below.
$data['all'] = $this->model_name->getData();
//then run that data through a foreach loop to populate the dropdown variable.
foreach($data['all'])
{
    $data['idDropDown'][$data['all']['id']]=$data['all']['ad'];
}

这将传递一个数组,如: [455]=>Aliağa, [456]=>Balçova 作为 $idDropDown 以及您的原始数据作为 $all

然后在视图中刚刚使用了 CI 的表单下拉菜单。

echo form_dropdown('id',$idDropDown);
于 2013-03-16T21:48:31.213 回答
0

在你的情况下,它会是这样的

$ilce = array(array("id" => 455, "il_id" => 35,"ad" => "Aliağa"), 
              array("id" => 456, "il_id" => 35, "ad" => "Balçova"));

$options = array();

foreach($ilce as $x) {
    $options[$x['id']] = $x['ad']; 
} 

echo form_dropdown('names', $options);
于 2013-03-16T21:57:45.917 回答