【问题标题】:Updating Mysql database data using Php and Ajax使用 Php 和 Ajax 更新 Mysql 数据库数据
【发布时间】:2019-06-06 10:22:12
【问题描述】:

我正在尝试设置一个按钮,单击该按钮会在数据库值中添加一个固定数字。该数据库名为var_stat,由idvalue 组成。到目前为止,该表只有一行 id = varvalue = 35。如果单击,按钮应将值加 5,使其变为 40。

我不确定在这里做什么,因为我找到的所有答案都使用了完全不同的方法和字符串而不是整数。到目前为止,我已经这样做了:

if (isset($_POST['n'])){
$n = $_POST['n'] ;
$stmt = $con->prepare('UPDATE var_stat SET value = value + $n WHERE id = ? ');
$stmt->bind_param('s', $id);
$id = "var";
$stmt->execute();
$stmt->close();
}
<script src="js/jQuery-3.4.1.js"></script>
  <script>
   function add(n){ 
    $.ajax({
        type: "POST",
        url: "update.php",
        data: {
            'n' : n
        },
        cache: false,
        success: function(response)
        {
        alert("Record successfully updated");
        }
    });
 }
  </script>
<form>
<input type="button" value="+5" class="btn btn-circle btn-grey col-sm-10" onclick="add(5);">
</form>

如果我将update.php 中的$n 更改为integer 并单独运行update.php 它可以工作,但是我似乎无法让它通过我的html 页面运行,所以我猜有我的 javascript 代码有问题吗?

【问题讨论】:

    标签: php jquery html mysql ajax


    【解决方案1】:

    同样绑定n,将id移到绑定语句之前

    if (isset($_POST['n'])){
        $n = $_POST['n'] ;
        $id = "var";
        $stmt = $con->prepare('UPDATE var_stat SET value = value + ? WHERE id = ? ');
        $stmt->bind_param('is',$n, $id);
        $stmt->execute();
        $stmt->close();
    }
    

    【讨论】:

    • 我的评论好像没有通过。它就像一个魅力,非常感谢你的帮助!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-25
    • 2021-04-16
    • 2020-09-22
    • 2014-01-04
    相关资源
    最近更新 更多