为什么页面重新加载后我的AJAX函数执行?

时间:2019-04-26 10:25:46

标签: javascript php jquery ajax mysqli

我希望在不刷新页面的情况下按下网页上的按钮来更新数据库。我使用了AJAX函数,但是我注意到只要重新加载页面,它也会执行。

到目前为止,我所做的是:我在脚本代码中创建了一个ajax函数,以在单击按钮时执行,并且效果很好。但是,当我重新加载页面时,就像按按钮一样。

这是脚本:

$(document).ready(function() {
   $('#delAddress').click(function() {
     <?php
       $sql = "UPDATE billinginfo SET 
       fullname = '',
       address1 = '',
       address2 = '',
       zip = '',
       city = '',
       country = ''
       WHERE username = '$usernameProfile';";
       $result = mysqli_query($dbProfile, $sql);
       ?>
    return false;
   });
});

我希望它像现在一样执行,但是在重新加载页面时不希望它执行。

1 个答案:

答案 0 :(得分:-1)

您在这里混合了2个不同的概念,即发送ajax调用的代码和在服务器中处理此ajax调用的代码。他们是不同的东西。

进行ajax调用的代码:

一方面,您应该拥有可以进行ajax调用的前端代码。像这样:

$(document).ready(function() {
   $('#delAddress').click(function() {
    $.ajax({
      url: 'file.php',
      method:'POST',
      data: parameters,
      success: function(msg) {
         //code to execute in the browser when your ajax request has been processed
      }
    })
   });
});


用于处理服务器中ajax调用的代码:

另一方面,处理此请求并在服务器上执行SQL查询的代码。像这样:

<?php

  if(isset($_POST['usernameProfile'])) {

    $usernameProfile = $_POST['usernameProfile'];

    $con = mysql_connect("localhost","username","password"); //replace with your DB credentials
    if (!$con) {
      die('Could not connect: ' . mysql_error());
    }

    $sql = "UPDATE billinginfo SET 
    fullname = '',
    address1 = '',
    address2 = '',
    zip = '',
    city = '',
    country = ''
    WHERE username = $usernameProfile";

    $result = mysql_query($sql,$con);
    echo $result;

    mysql_close($con);
  }
?>