Опубликовать форму с загрузкой вкладки ajax - PullRequest
0 голосов
/ 09 сентября 2018

У меня есть страница с формой POST, когда я отправляю форму, детали обновляются в базе данных. И у меня есть другая страница, где я использую AJAX TAB, что означает, что я загружаю первую страницу с AJAX, когда я делаю это и использую форму, детали не обновляются в базе данных.

Буду признателен за помощь.

  <?php
        if( isset($_POST['newcst']) )
        {
            /*client add*/
                //getting post from user add form
            $c_name = $_POST['c_name']; 
            $c_adress = $_POST['c_adress'];
            $c_idnum = $_POST['c_idnum'];
            $c_phone = $_POST['c_phone'];
            $c_mail = $_POST['c_mail'];
        echo $c_num;

        //insert client into SQL
        $wpdb->insert('se_clients',array(
            'c_name' => $c_name,
            'c_adress' => $c_adress,
            'user_id'=>$cur_id, 
            'c_num'=>$c_idnum,
            'c_phone'=>$c_phone,
            'c_mail'=>$c_mail,
        ));
      }
     ?>



      <html>
    </head>
    <body>

        <div id="newcst">
        <form action="" method="post">
            <label>Full name:</label>
            <input type='text' name='c_name' /><br><br>
            <label>ID: </label>
            <input type='text' name='c_idnum' /><br><br>
            <label>PHONE:</label>
            <input type='text' name='c_phone' /><br><br>
            <label>ADRESS: </label>
            <input type='text' name='c_adress' /><br><br>
            <label>EMAIL: </label>
            <input type='text' name='c_mail' /><br><br>
            <input name="newcst" type="submit" value="create">
          </form>
        </div>
    </body>

    </html>

Вкладка Ajax:

$(document).ready(function() {
    $("#nav li a").click(function() {

        $("#ajax-content").empty().append("<div id='loading'><img src='http://wigot.net/project/wp-content/themes/projthem/vendor/images/loader.gif' alt='Loading' /></div>");
        $("#nav li a").removeClass('current');
        $(this).addClass('current');

        $.ajax({ url: this.href, success: function(html) {
            $("#ajax-content").empty().append(html);
            }
    });
    return false;
    });


     $("#ajax-content").empty().append("<div id='loading'><img src='http://wigot.net/project/wp-content/themes/projthem/vendor/images/loader.gif' alt='Loading' /></div>");
    $.ajax({ url: 'invoice', success: function(html) {
            $("#ajax-content").empty().append(html);
    }
    });

});

Ответы [ 2 ]

0 голосов
/ 09 сентября 2018

Я нашел решение, вам нужно добавить код PHP, который отвечает за ввод данных в базу данных на главной странице, содержащей AJAX, а не на страницу с самой формой.

0 голосов
/ 09 сентября 2018

hover (), click (), bind (), on () и другие работают только после перезагрузки страницы. Так что вы можете использовать live ()

или

$(document).on('click', 'element', function () {
   ...
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...