PHP/MySQL/AJAX - 更新多个数据

标签 php mysql ajax mysqli

如何使用 AJAX 更新多个数据?

示例:

TableA

id : 1, 2

name : Jack, John

它只适用于 ID 1,当我尝试编辑 ID 2 的名称时它不起作用。

我试过这段代码但失败了。

HTML/PHP:

...

    while($row=mysqli_fetch_array($query)){
    echo'    
    <form class="btn-group">
        <input type="text" class="form-control" name="id_user" id="id_user" data-user="'.$row['id'].'" value="'.$row['id'].'">
        <input type="text" class="form-control" name="id_status" id="id_status" data-status="'.$row['id'].'" value="'.$row['id'].'">
        <button type="submit" id="likestatus" class="btn btn-primary btn-outline btn-xs"><i class="fas fa-thumbs-up"></i></button>
        </form>
    ';
    }

Ajax :

$(document).ready(function(){
    $("#likestatus").click(function(){
    var id_user=$("#id_user").data("user");
    var id_status=$("#id_status").data("status");
        $.ajax({
        url:'status/like-status.php',
        method:'POST',
        data:{
            id_user:id_user,
            id_status:id_status
            },
            success:function(response){
            alert(response);
            }
        });
    });
});

最佳答案

您的代码的问题在于 ID 应该是唯一的,但是在循环中您创建了具有相同 ID 的元素。

在事件处理程序中使用 this 来查找已单击按钮的同级按钮 - 最近返回类型为 form 的父级。

$(document).ready(function(){
    $(".btn-primary").click(function(){
        var $form = $(this).closest('form');
        var id_user=$form.find('[name="id_user"]').data("user");
        var id_status=$form.find('[name="id_status"]').data("status");
            $.ajax({
            url:'status/like-status.php',
            method:'POST',
            data:{
                id_user:id_user,
                id_status:id_status
                },
                success:function(response){
                alert(response);
                }
            });
    });
});

您可能希望使用自己的类而不是 .btn-primary,因为这会影响页面上的所有按钮。

关于PHP/MySQL/AJAX - 更新多个数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50291101/

相关文章:

php - 如何显示所有记录分组依据

javascript - PHP中两个输入值相减并更新mysql数据库

php - 执行 phpMyAdmin 时 MySQL 查询无法执行

javascript - jQuery for ajax 调用循环并等待所有操作完成

PHP 堆栈偶尔显示空白页

php - 我想得到在 php 表单中填写的两个时间戳之间的差异

jquery - Google map 搜索框 APi,初始加载后搜索框不显示

javascript - 如何使用 GET/POST 和 Token key 基于 Ajax 调用 ASP.NET Web API

java - 建立 URL 连接会使我的应用程序崩溃

php - 使用空格在 MySQL 中搜索