如何通过form_open_multipart将id从视图发送到控制器CodeIgniter


How to send id from view to Controller CodeIgniter via form_open_multipart

我正在尝试在CodeIgniter中从视图向控制器发送id。我的要求是根据按钮id切换函数。这是我的HTML代码。

查看HTML

 <?php echo form_open_multipart('upload_control/switch_load','id="bt_addImage"');?>
 <input id= "bt_addImage" type="submit" value="Add Image" /> <br>
 <?php echo form_open_multipart('upload_control/switch_load','id="bt_chooseImage"');?>
 <input type="submit" id="bt_chooseImage" value="Submit"/><br>

Upload_control.php代码

public function switch_load($id)
{
    if($id == "bt_addImage")
    {
        do_loadcategories();
    }
    else
    {
        do_upload();
    }
}
public function do_loadcategories()
{
    //code list categories
}
public function do_upload()
{
    //code to upload
}

它正确吗?

有别的办法吗?

帮我解决这个问题。

在视图中

$hiddenFields = array('id' => 'bt_addImage'); # add Hidden parameters like this
echo form_open_multipart('upload_control/switch_load', '', $hiddenFields);

在控制器中

public function switch_load()
{
    $id = $this->input->post('id');
    if($id == "bt_addImage")
    {
        do_loadcategories();
    }
    else
    {
        do_upload();
    }
}

视图看起来像这个

<form method="post" accept-charset="utf-8" action="http:/example.com/index.php/upload_control/switch_load">
<input type="hidden" name="id" value="bt_addImage" /> # hidden filed.

Codeigniter Form Helper

的更改

if($id == "bt_addImage")

进入

if($this->input->post('id') == "bt_addImage")