При нажатии на кнопку она не передает данные changePassword.php через Ajax JQuery

голоса
0

Это форма , через которую я хочу , чтобы отправить данные в changePassword.php. но не отправлять данные.

<form class=form-horizontal method=post>
    <div class=form-group>
        <label for=inputName class=col-sm-2 control-label>Current Password</label>
        <div class=col-sm-10>
            <input type=text class=form-control id=current_password name=current_password placeholder=Name>
        </div>
    </div>
    <div class=form-group>
        <label for=inputEmail class=col-sm-2 control-label>New Password</label>
        <div class=col-sm-10>
            <input type=password class=form-control id=new_password name=new_password placeholder=Email>
        </div>
    </div>
    <div class=form-group>
        <label for=inputEmail class=col-sm-2 control-label>Confirm Password</label>
        <div class=col-sm-10>
            <input type=password class=form-control id=confirm_password name=confirm_password placeholder=Email>
        </div>
    </div>
    <div class=form-group>
        <div class=col-sm-offset-2 col-sm-10>
            <button type=submit name=changePassword id=changePassword  class=btn btn-primary>Change Password</button><br><br><br><br><br>
        </div>
    </div>
</form>

Это код Ajax , через который данные посылаются changePassword.php.

$(#changePassword).click(function(event) {
     var old_pass = $('#current_password').val();
     var new_pass =  $('#new_password').val();
     var conf_pass = $('#confirm_password').val();

     $.ajax({
          url: ajax/changePassword.php,
          type: post,
          data: ({ old_pass: old_pass, new_pass: new_pass, conf_pass: conf_pass}),
          success: function(data){

          }
     });
});

И это changePassword.phpстраница.

 <?php
    session_start();
    include../include/connection.php;

     if (!isset($_SESSION['FT_id']))
            {

            }

    $single_user=$_SESSION['FT_id'];
    $query=select * from faculty where faculty_phone=$single_user;
    $cm=sqlsrv_query($conn,$query);
    $resultFT = sqlsrv_fetch_array($cm);        

           echo $password = $_POST['old_pass']; exit;    

    ?>
Задан 20/10/2018 в 05:32
источник пользователем
На других языках...                            


1 ответов

голоса
0

Вам нужно остановить распространение события браузера, когда кнопка была нажата. Браузер представляемой формы на текущую страницу, и запуск AJAX звонить одновременно, но перезагрузки страницы быстрее и остановить вызов AJAX.

Чтобы сделать это, измените код JQuery на это:

$('#changePassword').click ( function ( event)
{
  event && event.preventDefault ();

  $.ajax (
  {
    url: 'ajax/changePassword.php',
    type: 'POST',
    data:
    {
      old_pass: $('#current_password').val (),
      new_pass: $('#new_password').val (),
      conf_pass: $('#confirm_password').val ()
    },
    success: function ( data)
    {
      alert ( 'Password changed!');
    }
  });
});
Ответил 20/10/2018 в 05:41
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more