Можно ли вызвать диалог подтверждения с контроллера в codeigniterr? - PullRequest
0 голосов
/ 26 мая 2019

Я использую codeigniter версии 3. Когда я отправляю эту форму, мне нужно сохранить данные этой формы, и должно появиться диалоговое окно с подтверждением «Да, нет». Если пользователь нажимает «Да», я должен перенаправить на страницу, а если использовать «Нет», я должен перенаправить на другую страницу. Как я могу это сделать? Код моего просмотра:

<form id="saveRenewFirm" action="<?php echo base_url() ?>firm/saveFirmInfo"  method="post" role="form">        

                <div class="row">
                    <div class="col-25">
                    <label> Name of the firm:</label>
                    </div>
                     <div class="col-75">                           
                                <input type="text" id="firm_name" name="firm_name" value="<?php echo $firmDetail->firm_name; ?>"  <?php echo $status;?> style="width:50%;" />
                    </div>
                </div></p>
                    <div class="row">
                    <div class="col-25">    

                        <label>Category :</label>
                        </div>  
                    <div class="col-75">
                            <input type="text" name="category" id="category"  value="<?php echo $firmDetail->category; ?>" <?php echo $status;?> />
                        </div>
                </div>
                    <div class="row">
                    <div class="col-25">
                        <label>Phone no :</label>
                        </div>  
                    <div class="col-75">
                            <input type="text" name="phone_no" id="phone_no"  value="<?php echo $firmDetail->phone; ?>" <?php echo $status;?> />
                    </div>
                    </div>  


                <div class="row">
                    <div class="col-25">

                        <label>Address :</label></div><div class="col-75"><input type="text" name="address" style="width:400px;" id="address" value="<?php echo $firmDetail->address; ?>" <?php echo $status;?> />
                    </div>
                </div>  
            <button  value="submit" name="action" type="submit"    class="button" >Submit</button>
                    <?php echo form_hidden('renew_id',$firmDetail->renew_id);?>
                </form>

Мой контроллер:

   public function saveFirmInfo() {
    $this->setValidation();
    if($this->form_validation->run() == FALSE){

            $this->index();

    } else {
            $data = array(
                'firm_name' => $this->input->post('firm_name'),
                'category' => $this->input->post(category),
                'phone_no' => $this->input->post('phone_no'),
                'address' => $this->input->post('address'));


        $new_id = $this->renewed_firm_model->insert($data);

        if($new_id>0){
                $this->session->set_flashdata('success', 'Firm Detail submitted. Do you want to continue to payment?'); 
        }else {
                $this->session->set_flashdata('error', 'Error during processing, please try again...');

         }
         redirect('member/profile','refresh');
}

Я хочу вывести диалоговое окно подтверждения вместо флеш-сообщения, чтобы продолжить оплату. Если пользователь нажимает «да», я должен перенаправить на страницу оплаты, и если пользователь нажимает, не нужно открывать другую страницу.

1 Ответ

0 голосов
/ 26 мая 2019

Вы можете сделать это двумя способами.

Первый и самый простой способ с учетом вашего текущего кода - перенаправить на страницу после того, как пользователь отправит форму с вопросом и двумя вариантами (да или нет).

Второй способ - отправить форму через ajax и запустить модал на функцию успеха. Это будет более интенсивным и потребует существенных изменений в вашей текущей функции сохранения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...