繁体   English   中英

提交表单后在 Codeigniter 中重新加载当前 URL

[英]Reload current URL in Codeigniter After Submit The Form

我的 view.php 文件中有一个表单。 它的 URL 像https://example.com/members/view/1https://example.com/members/view/2等。当我通过控制器提交表单它的调用模型时,如下所示

public function insert_comments(){



        $data=$this->input->post();



        $this->load->model('work_model');



        $result=$this->work_model->insert_comments($data);



        if($result)



        {
                $this->session->set_flashdata('insert_comments','your comments succesfully');

                $this->session->set_flashdata('succesfully','alert-success');

                $this->load->view('add_coments');

        }

        else{


            $this->session->set_flashdata('insert_comments','your comments failed');

                $this->session->set_flashdata('succesfully','alert-danger');

                $this->load->view('add_coments');

        }

    }

}

和模型如下

public function insert_comments($array)

{

    return $this->db->insert('comments',$array);

}

目前它工作正常,并在表单上提交其名为 add_comments 的加载视图,而不是我想要重新加载/刷新当前页面。 我不知道如何做到这一点,如果有人可以帮助我做到这一点,请告诉我。

谢谢!

根据这个答案,在控制器中你可以使用:

redirect($this->uri->uri_string());

用这个 :

redirect($_SERVER['REQUEST_URI'], 'refresh'); 

每当您重新加载或重定向页面时,您应该始终使用redirect()方法而不是加载视图。

重定向基本上使用核心PHP的header()方法,重定向永远不会执行redirect()方法之外编写的代码块。 但是在加载视图的情况下,它可以执行到代码块结束。

在您的代码中,替换行$this->load->view('add_coments'); 重定向到所需的控制器

redirect('your-controller','refresh');

我希望这对你有帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM