Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 如何使用ajax保存到数据库_Html_Mysql_Ajax - Fatal编程技术网

Html 如何使用ajax保存到数据库

Html 如何使用ajax保存到数据库,html,mysql,ajax,Html,Mysql,Ajax,我有一个代码,这是工作正常,但数据不能保存到数据库。我想通过Ajax将成本、汇率、利润率和价格插入数据库。下面是javascript和update.php的代码,我试图修改代码以保存在Mysql服务器中,但没有成功。有人能帮忙吗 javascript $(".profitRate").change(function() { var myArray = []; //find closest table->next table var elem =

我有一个代码,这是工作正常,但数据不能保存到数据库。我想通过Ajax将成本、汇率、利润率和价格插入数据库。下面是javascript和update.php的代码,我试图修改代码以保存在Mysql服务器中,但没有成功。有人能帮忙吗

javascript

$(".profitRate").change(function() {
    var myArray = [];
    //find closest table->next table
    var elem = $(this).closest('table').next('table');
    var action = elem.find('tr').data('action');
    console.log(action)

    var profitRate = Number($("#profitRate").val());
    //looping 
    elem.find('tr').each(function() {
        //get cost
        var cost = $(this).find('input[name=cost]').val();
        //get curency rate
        var currecy_rate = $(this).find('select[name=currency_rate]').val();
        //calculate profit
        var profit_total = Math.round(cost * profitRate * currecy_rate)
        $(this).find('input[name=pprice]').val(profit_total)
        //add to json object
        auto_array = {};
        auto_array["cost"] = cost;
        auto_array["currecy_rate"] = currecy_rate;
        auto_array["pprice"] = profit_total;
        myArray.push(auto_array) //push to array
    });
    console.log(myArray)

    form_data = elem.find('tr').data('action');
    $.ajax({
        data: {
            action: action,
            form_data: form_data,
        },
        url: 'update.php',
        type: 'post',
        beforeSend: function() {

        },
        success: function(data) {
            if(data == 1){

            }
        }
    });
})
update.php

<?php

if ($_POST['action'] == 'update_price') {
    parse_str($_POST['form_data'], $my_form_data);

    $id = $my_form_data['id']; 
    $cost = $my_form_data['cost']; 
    $profit_rate = $my_form_data['profit_rate']; 
    $currency_rate = $my_form_data['currency_rate']; 
    $pprice = $my_form_data['pprice'];

    $sql = $query = $finalquery = $sqlresult = '';

    if ($cost){
        $sql.="cost='$cost',";
    }
    
    if ($profit_rate){
        $sql.="profit_rate='$profit_rate',";
    }

    if ($currency_rate){
        $sql.="currency_rate='$currency_rate',";
    }   

    if ($pprice){
        $sql.="pprice='$pprice',";

        $finalquery = rtrim($sql,',');
        $query="UPDATE `gp_info` SET $finalquery where id=$id";

        $sqlresult=mysql_query($query);
        if($sqlresult){
            $reback=1;
        }else{
            $reback=0;
        }
        echo $reback;
    }
}

您应该编辑您的问题以包含update.php的代码,但不要包含您的真实用户和密码。还要添加您正在写入的数据库服务器类型和版本。您没有为
form\u data
分配任何值。您需要扔掉此PHP代码,从头开始。了解SQL注入漏洞以及如何在PHP中使用查询参数。对不起,我已经尝试过了,但我不知道如何为表单_数据赋值?有什么提示吗?您可以发送
myArray
,因为它将包含您需要的所有值。还要检查将json数据发送到php。您应该编辑您的问题以包含update.php的代码,但不要包含您的真实用户和密码。还要添加您正在写入的数据库服务器类型和版本。您没有为
form\u data
分配任何值。您需要扔掉此PHP代码,从头开始。了解SQL注入漏洞以及如何在PHP中使用查询参数。对不起,我已经尝试过了,但我不知道如何为表单_数据赋值?有什么提示吗?您可以发送
myArray
,因为它将包含您需要的所有值。还要检查将json数据发送到php。