Модальная загрузка без использования javascript в php (CodeIgniter)

Я хочу открыть модель при успешном представлении формы, но форма отправки модальных данных не появляется.

public function insert($data) { // Inserting into your table // Calling model $done = $this->db->insert('sign_up', $data); if($done) { echo "<script>$('#thankyouModal').modal('show')</script>"; echo '<div class="modal fade" id="thankyouModal" tabindex="-1" role="dialog"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button> <h4 class="modal-title" id="myModalLabel">Thank you for pre-registering!</h4> </div> <div class="modal-body"> <p>Thanks for getting in touch!</p> </div> </div> </div> </div>'; } } 

Я пытаюсь открыть модель в контроллере, используя

  $data = array( 'first_name' => $fname, 'last_name' => $lname, 'email' => $email, 'password' => $password ); $this->load->model('modal'); $this->modal->insert($data); 

Related of "Модальная загрузка без использования javascript в php (CodeIgniter)"

Попробуйте под кодом; это будет работать

 public function insert($data) { // Inserting into your table // Calling model $done = $this->db->insert('sign_up', $data); // You can do something else here if($done) { ?> <script>$(document).ready(function(){$('#thankyouModal').modal('show')});</script> <div class="modal fade" id="thankyouModal" tabindex="-1" role="dialog"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button> <h4 class="modal-title" id="myModalLabel">Thank you for pre-registering!</h4> </div> <div class="modal-body"> <p>Thanks for getting in touch!</p> </div> </div> </div> </div> <?php } } 

Поместите код модального файла в файл вида, чтобы мы могли легко вызвать модальный код с javascript в файле вида. И вам нужно установить переменную во флэш-данных, чтобы вы могли проверить условие, что форма была успешно вставлена ​​или нет. Вот код, я надеюсь, это поможет вам:

Файл контроллера:

  public function insert($data) { // Inserting into your table // Calling model $done = $this->db->insert('sign_up', $data); // You can do something else here if($done) { //You can set the message and variable name as per your need. $this->session->set_flashdata('inserted','Yes'); //Redirect to the desired view file redirect("controller/anotherfunction_where_view_file_is_loaded"); } 

Посмотреть файл:

  <div class="modal fade" id="thankyouModal" tabindex="-1" role="dialog"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button> <h4 class="modal-title" id="myModalLabel">Thank you for pre-registering!</h4> </div> <div class="modal-body"> <p>Thanks for getting in touch!</p> </div> </div> </div> </div> <?php if((isset($this->session->flashdata('inserted'))) && $this->session->flashdata('inserted') != "") { ?> <script type="text/javascript"> $(document).ready(function(){ $('#thankyouModal').modal('show'); }); </script> <?php } ?> 

Я получил ответ

КОНТРОЛЛЕР

 public function insert() { $signup_email = $this->input->post('signup_email'); $signup_password = $this->input->post('signup_password'); // Checking if everything is there if ($fname && $signup_email && $signup_password) { $data = array( 'email' => $signup_email, 'password' => $signup_password ); if($this->modal->insert($data)) { echo "SOME DATA TO BE DISPLAYED IN MODAL"; } } } 

ПОСМОТРЕТЬ

 <body> <div class="modal fade" id="thankyouModal" tabindex="-1" role="dialog"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button> <h4 class="modal-title" id="myModalLabel">Thank you for pre-registering!</h4> </div> <div class="modal-body"> <p>Thanks for getting in touch!</p> </div> </div> </div> </div> <script> var signup_email = $('#signUp').val(); var signup_password = $('#signUpPassword').val() ; $.ajax({ type: "POST", url: "<?php echo site_url('form/insert'); ?>", data: { signup_email: signup_email, signup_password: signup_password }, dataType: "html", success: function(data) { if(data) { $('#thankyouModal').modal('show'); } }, error: function() { alert("ERROR!"); } }); </script> </body>