Javascript 从HTML表更新SQL Server数据

Javascript 从HTML表更新SQL Server数据,javascript,php,html,sql-server,ajax,Javascript,Php,Html,Sql Server,Ajax,我有下表: <table id="skuTable" role="grid"> <thead> <th class="skuRow">Orden</th> <th>Fecha Fab.</th> <th class="skuRow">Norden</th> <th>Color</th> &l

我有下表:

<table id="skuTable" role="grid">
    <thead>
        <th class="skuRow">Orden</th>
        <th>Fecha Fab.</th>
        <th class="skuRow">Norden</th>
        <th>Color</th>
        <th>Cliente</th>
        <th>Metros</th>
        <th>Tiempo</th>
        <th>Fecha Ent.</th>
        <th>Operario</th>
        <th class="skuRow">Editar</th>
    </thead>
    <tbody>
脚本Update.php:

<?php
$Orden  = $_POST['Orden'];
$NOrden = $_POST['NOrden'];
$host   = "xxxxxxxxxx";
$dbName = "xxxxx";
$dbUser = "xxxxxxxxxxxxxx";
$dbPass = "xxxxxxxxxxxx";
$pdo    = new PDO("sqlsrv:server=" . $host . ";Database=" . $dbName, $dbUser, $dbPass);
$sql    = "UPDATE Ordenes SET OF_OrdenOFs = '$Orden' WHERE OF_N_Orden = '$NOrden'";
$stmt   = $pdo->prepare($sql);
//$stmt->bindValue('[:SKU Group]', $SKU);
//$stmt->bindValue(':Group_ID', $Group_ID)  
$result = $stmt->execute();
echo json_encode($result);
if (!$result) {
    echo json_encode(sqlsrv_errors());
}
?>

在JavaScript更新调用过程中,您似乎正在将要更新的值设置为
dict[“N_Orden”]
。然而,在你的
Update.php
中,你似乎想要
$\u POST['NOrden']
的值,我认为它没有定义?

在你的JavaScript更新调用中,你似乎正在将你想要更新的值设置为
dict[“N\u Orden”]
。但是,在
Update.php
中,您似乎想要
$\u POST['NOrden']
的值,我认为它没有定义?

您需要在
Update
语句中使用参数。
$Orden
$NOrden
变量的实际值是多少?谢谢。我不知道我有错误的东西,或者我必须修改它,以便在保存时将每行的两个数据传递给update.php。您需要在
update
语句中使用参数。
$Orden
$NOrden
变量的实际值是多少?谢谢。我不知道我有错误的东西,或者我必须修改,以便在将每行的两个数据交给save时将其传递给update.php。那么我应该如何在表或脚本中定义它们?那么我应该如何在表或脚本中定义它们?
$(document).on("click", "#skuTable .edit", function () {
    var $this = $(this);
    var tds   = $this.closest('tr').find('td').filter(function () {
        return $(this).find('.edit').length === 0;
    });
    if ($this.val() === 'Edit') {
        $this.val('Save');
        if ($this.id !== '.orden') {
            tds.prop('contenteditable', true);
        }
    }
    else {
        var isValid = true;
        var errors  = '';
        $('#myDialogBox').empty();
        var elements = tds;
        if (tds.find('input').length > 0) {
            elements = tds.find('input');
        }
        var dict = {};
        elements.each(function (index, element) {
            var type  = $(this).attr('class');
            var value = (element.tagName == 'INPUT') ? $(this).val() : $(this).text();
            console.log(type);
            // ----- Switch statement that provides validation for each table cell -----
            switch (type) {
                case "norden":
                    dict["N_Orden"] = value;
                    break;
                case "orden":
                    dict["Orden"] = value;
                    break;
            }
        })
        if (isValid) {
            console.log(dict);
            $this.val('Edit');
            tds.prop('contenteditable', false);
            var request = $.ajax({
                type: "POST", url: "update.php", data: dict
            });

            request.done(function (response, textStatus, jqXHR) {
                if (JSON.parse(response) == true) {
                    console.log("row updated");
                }
                else {
                    console.log("row failed to updated");
                    console.log(response);
                    console.log(textStatus);
                    console.log(jqXHR);
                }
            });

            // Callback handler that will be called on failure
            request.fail(function (jqXHR, textStatus, errorThrown) {
                // Log the error to the console
                console.log(textStatus);
                console.log(jqXHR);
                console.error("The following error occurred: " + textStatus, errorThrown);
            });

            // Callback handler that will be called regardless
            // if the request failed or succeeded
            request.always(function () {

            });
        }
        else {
            alert(errors);
        }
    }
});
<?php
$Orden  = $_POST['Orden'];
$NOrden = $_POST['NOrden'];
$host   = "xxxxxxxxxx";
$dbName = "xxxxx";
$dbUser = "xxxxxxxxxxxxxx";
$dbPass = "xxxxxxxxxxxx";
$pdo    = new PDO("sqlsrv:server=" . $host . ";Database=" . $dbName, $dbUser, $dbPass);
$sql    = "UPDATE Ordenes SET OF_OrdenOFs = '$Orden' WHERE OF_N_Orden = '$NOrden'";
$stmt   = $pdo->prepare($sql);
//$stmt->bindValue('[:SKU Group]', $SKU);
//$stmt->bindValue(':Group_ID', $Group_ID)  
$result = $stmt->execute();
echo json_encode($result);
if (!$result) {
    echo json_encode(sqlsrv_errors());
}
?>