Обновить текущий URL в Codeigniter после отправки формы - PullRequest
1 голос
/ 27 февраля 2020

У меня есть одна форма на мой взгляд. php файл. Его URL-адрес как https://example.com/members/view/1, https://example.com/members/view/2 et c. Когда я отправляю форму его вызывающей модели через контроллер, как показано ниже

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, вместо этого я хочу перезагрузить / обновить sh текущую страницу. Я не могу понять, как я могу это сделать, дайте мне знать, если кто-то может помочь мне сделать это.

Спасибо!

Ответы [ 3 ]

0 голосов
/ 27 февраля 2020

используйте это:

redirect($_SERVER['REQUEST_URI'], 'refresh'); 
0 голосов
/ 27 февраля 2020

Всякий раз, когда вы перезагружаете или перенаправляете страницу, вы всегда должны использовать метод redirect() вместо загрузки представления.

Перенаправление в основном использует метод header() ядра PHP, и перенаправление никогда не выполнит блоки кода, написанные за пределами метода redirect(). Но в случае загрузки представления он может выполняться до конца блока кода.

В вашем коде замените строку $this->load->view('add_coments'); перенаправлением на нужный контроллер

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

Надеюсь, это поможет вам.

0 голосов
/ 27 февраля 2020

Согласно этому ответу , в контроллере вы можете использовать:

redirect($this->uri->uri_string());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...