Как перезагрузить модальное содержимое из базы данных mysql? - PullRequest
0 голосов
/ 26 февраля 2020

У меня проблема с обновлением содержимого модала.

Когда модал появляется, он выглядит так Мой модал .

Когда я нажимаю кнопку «Добавить еще одно объявление», мне нужно перезагрузить тело модала. Это означает, что после нажатия этой кнопки значение вставляется в базу данных MySQL, а затем должна отображаться еще одна строка в модальном режиме.

Это мой модал. Его содержимое отображается из базы данных MySQL:

    <div id="myModal" class="modal fade" data-keyboard="false" href="ajax.html" data-toggle="modal" data-target="#myModal" data-remote="false" >
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <h4 class="modal-title">Select what you have tagged:</h4>
        <div class="modal-body">
          <div class="row">
            <div class="column1">
              <label class="control-label"></label>
            </div>
            <div class="column1">
              <label class="control-label">Start:</label>
            </div>
            <div class="column1">
              <label class="control-label">Stop:</label>
            </div>
          </div>
          <?php
          $option = array();
          $fetch_option_name = $db->sql_query("SELECT DISTINCT options FROM ads_options");
          while ($row_user = mysql_fetch_assoc($fetch_option_name)) {
            $option[] = $row_user;
          }
          $num = 1;
          foreach($option as $key => $value) {
            foreach($value as $val) {
echo '<div class="row">';
?>
<div class="column">
  <?
  echo '<label class="control-label"> '.$val.' </label>';
  ?>
</div>                  
<div class="column">
  <?
  echo  '<input type="radio" name="radioBtn" value="ad'.$num.'_start">';
  ?>  
</div>
<div class="column">
  <?
  echo  '<input type="radio" name="radioBtn" value="ad'.$num.'_end">';
  ?> 
</div>
<div class="column">
  <?
  echo  '<button type="button" name="resetBtn'.$num.'" class="btn1">reset</button>';
  ?> 
</div>
</div>
<?
++$num;
?>
<?
}
}
?>
</div>
<div class="modal-footer">
 <button type="button" id ="saveBtn" class="btn btn-primary">Save choice</button>
 <button type="button" id = "add_ad" onclick="myFunction();" class="btn btn-primary">Add one more ad</button>
</div>
</div>
</div>
</div>
</div>

Это мои javascript и ajax, которые обновляют тело модала, но не принимают новое вставленное значение из базы данных MySQL (это Опция тестирования выглядит следующим образом: Перезагрузка модальной :

  $('#add_ad').click(function(){

$.ajax({ url: 'ajax',
 data: {action: 'add_ad'},
 type: 'post',
 success: function() {       

var pf = '<?php $options = array();$fetch_option_name = $db->sql_query("SELECT * FROM ads_options");while ($row_user = mysql_fetch_assoc($fetch_option_name)) {    $options[] = $row_user;} $num = 1; foreach($options as $key => $value) {  foreach($value as $val) {       echo $val; }  }; ?>';    

$("#myModal .modal-body").html(pf); 
$("#myModal").modal('show');    
}

});
  });

Так что проблема в том, что ajax выглядит как работающее, но не получает вставленное новое значение из базы данных. Мне нужно после нажатия кнопка «Добавить еще одно объявление» добавит новое значение в базу данных и в то же время после нажатия кнопки будет отображаться в теле модала.

Обновленное содержимое мода отображается только после перезагрузки страницы.

Подвести итог: возможно ли перезагрузить только модальный контент без перезагрузки всей страницы?

...