使用 select2,如何使用 CodeIgniter 通过 PHP 获取多个数据


Using select2, how can I get multiple data by PHP using CodeIgniter?

这是我的视图页面。如何从此处添加多个数据?

  <select multiple  id="e19">
      <option value="January">January</option>
      <option value="February">February</option>
      <option value="March">March</option>
      <option value="April">April</option>
      <option value="May">May</option>
      <option value="June">June</option>
      <option value="July">July</option>
      <option value="August">August</option>
      <option value="September">September</option>
      <option value="October">October</option>
      <option value="November">November</option>
      <option value="December">December</option>
</select>

您不必使用select标签的名称,这是强制性的。

还行。让select标签的名称是"月"那么你的代码将看起来像这样

<select multiple id="e19" name="month[]">

现在,在您的控制器中,您将获得一个包含选定项目的数组。

让您选择3个项目,分别是JanuaryAprilDecember

现在打印$_POST['month']

在这里,我举一个CI的例子

echo '<pre>';
print_r($this->input->post('month'))
echo '</pre>';

然后你的输出将看起来像这样

array(
      '0' => 'January'
      '1' => 'April'
      '2' => 'December'
)

现在,您可以随心所欲地使用此数组。

如果你写:

<form method="post">
<select multiple name="e19[]">

则 $_POST['E19'] 是一个包含用户选择的所有值的数组。

你应该在 select 元素中添加一个 name 属性,你将在 PHP 中获得数组选择的选项。

 <select multiple name="select[]" id="e19">
   <option value="January">January</option>
   <option value="February">February</option>
   <option value="March">March</option>
   <option value="April">April</option>
   <option value="May">May</option>
   <option value="June">June</option>
   <option value="July">July</option>
   <option value="August">August</option>
   <option value="September">September</option>
   <option value="October">October</option>
   <option value="November">November</option>
   <option value="December">December</option>
</select>

从CodeIgniter访问它:

$options = $this->input->post('select');
foreach($options as $option){
    echo $option;
}