PHP-ajax请求更新mysql数据库

PHP-ajax请求更新mysql数据库,php,mysql,Php,Mysql,我需要帮助 我有两个文件: ajax.php shows.php 在我的数据库中有一个表格,可以显示呼叫。 在表中,我有一列——img_信用。 我尝试更新此字段 我在输入字段中插入值,当我单击更新按钮时,我希望运行查询并更新我的数据库 我尝试: $(document).ready(function(){ $(".update_credit").click(function(){ <?php $val_update = $show['img_credits'];

我需要帮助

我有两个文件:

  • ajax.php
  • shows.php
  • 在我的数据库中有一个表格,可以显示呼叫。 在表中,我有一列——img_信用。 我尝试更新此字段

    我在输入字段中插入值,当我单击更新按钮时,我希望运行查询并更新我的数据库

    我尝试:

    $(document).ready(function(){
        $(".update_credit").click(function(){   
    <?php 
        $val_update = $show['img_credits'];
    
        $link->query("UPDATE `shows` SET `img_credits` = '$val_update ' WHERE `id` = show['id'] "); 
    ?> 
    
    这是工作,但对我没有帮助

    我检查,值显示['img_credit']不是空的


    感谢

    从您提供的代码来看,似乎您将客户端逻辑(Javascript/jQuery)与服务器端逻辑(PHP)混为一谈

    当您在同一个文件中混合了客户端和服务器端逻辑时,服务器端代码(PHP)将首先执行,并且仅在客户端(Javascript)之后执行。同样在上面的代码中,如果在Javascript函数中包含PHP代码,则不管PHP代码位于Javascript结构的何处,PHP代码都将执行。这就是为什么避免将它们混合在同一个文件中是一个很好的做法

    我建议使用如下基本API结构:

    let body = "foo"; //param to be sent to server side
    let request = $.ajax({
        type: "POST",
        url: "ajax.php",
        data: body
    });
    request.done(function (response) {
        console.log(response);
    });
    request.fail(function (jqXHR, data) {
        console.log("API error", data, jqXHR);
    });
    
    <?php 
    $val_update = $show['img_credits'];
    
    $link->query("UPDATE `shows` 
                  SET `img_credits` = '$val_update' 
                  WHERE `id` = ".$show['id']); 
    
    然后在ajax.php文件中,您可以使用后端逻辑执行如下数据库操作:

    let body = "foo"; //param to be sent to server side
    let request = $.ajax({
        type: "POST",
        url: "ajax.php",
        data: body
    });
    request.done(function (response) {
        console.log(response);
    });
    request.fail(function (jqXHR, data) {
        console.log("API error", data, jqXHR);
    });
    
    <?php 
    $val_update = $show['img_credits'];
    
    $link->query("UPDATE `shows` 
                  SET `img_credits` = '$val_update' 
                  WHERE `id` = ".$show['id']); 
    

    您遇到的错误是什么?你在哪里设置show['id']?