提交按钮,在CodeIgniter中执行PHP

提交按钮,在CodeIgniter中执行PHP,php,javascript,codeigniter,Php,Javascript,Codeigniter,我正在开发一个web应用程序,但遇到了一些小问题。我用的是CodeIgniter 我想有2个按钮,将执行2个不同的功能,对数据库做不同的事情。我在适当的控制器文件中创建了这些函数 让按钮执行各自功能的最佳方式是什么?如果它需要javascript,我做它没有问题,只是需要一些指针,因为我在这里有点困惑 如果他们正在更改数据库中的记录,您可能应该将其作为表单(或两个表单)的一部分来实现。潜在的破坏性操作不应仅使用简单的GET请求即可执行 表单可以包含隐藏的输入类型,以指定要在控制器中输入的内容 H

我正在开发一个web应用程序,但遇到了一些小问题。我用的是CodeIgniter

我想有2个按钮,将执行2个不同的功能,对数据库做不同的事情。我在适当的控制器文件中创建了这些函数


让按钮执行各自功能的最佳方式是什么?如果它需要javascript,我做它没有问题,只是需要一些指针,因为我在这里有点困惑

如果他们正在更改数据库中的记录,您可能应该将其作为表单(或两个表单)的一部分来实现。潜在的破坏性操作不应仅使用简单的GET请求即可执行

表单可以包含隐藏的输入类型,以指定要在控制器中输入的内容

HTML页面:

<form action="controller/myfunction" method="POST">
    <input type="hidden" name="action" value="one">
    <input type="submit" value="Do action one">
</form>

<form action="controller/myfunction">
    <input type="hidden" name="action" value="two">
    <input type="submit" value="Do action two">
</form>
function myfunction()
{
    // Your form would be submitted to this method...
    // Get action from submitted form ('one' or 'two')
    $action = $this->input->post('action');
    // Decide what to do
    switch ($action)
    {
        case 'one': $this->my_first_action(); break;
        case 'two': $this->my_second_action(); break;
    }
}

function my_first_action()
{
    // Do stuff...
}

提交表单后,最好重定向到另一个页面-使用“”模式。

这正是我想要的。现在的问题是,即使在我的控制器中定义了函数,并且在表单action=”“中正确调用了该函数,我仍会收到404错误?听起来您需要在表单的action标记中输入完整的URL。使用URL帮助器(例如)或表单帮助器()。还要确保方法设置为POST。