Php 使用动态表输入更新mySQL表

Php 使用动态表输入更新mySQL表,php,mysql,html,Php,Mysql,Html,我在用动态表更新mysql数据库时遇到了问题,在提交表单之前,我可以在动态表中添加或删除行 我可以用硬编码的值使它工作,但当我尝试用while循环更新时,我似乎无法使它工作 我第一次这样设置柱子 results += "<tr><td>" + "<input style=\"border:none\" name=\"bar"+i+"\" id=\"bar"+i+"\" type=\"text\" value=\""+myArray[i]+"\" class=\"fi

我在用动态表更新mysql数据库时遇到了问题,在提交表单之前,我可以在动态表中添加或删除行

我可以用硬编码的值使它工作,但当我尝试用while循环更新时,我似乎无法使它工作

我第一次这样设置柱子

results += "<tr><td>" + "<input style=\"border:none\" name=\"bar"+i+"\" id=\"bar"+i+"\" type=\"text\" value=\""+myArray[i]+"\" class=\"field left\" readonly>" + "</td>";  
results += "<td>" + "<input class=\"form-control\" type=\"text\" name=\"input"+i+"\" id=\"input"+i+"\"/>" + "</td>";

results += "<input class=\"form-control\" type=\"hidden\" value=\""+myArray.length+"\" name=\"arr\" id=\"arr\" readonly /><table><br /> <br />";
<?php

$arrLength= $_POST['arr'];
$x=0;
while ($x<$arrLength){

$quantity= $_POST['input0'];
$barcode = $_POST['bar0'];

$query="UPDATE inventory_items ".
   "SET item_quantity = item_quantity + $quantity ".
   "WHERE item_barcode = $barcode" ;


$x++;
};


?>
感谢您的帮助

将您的查询更新为:

$query= "UPDATE `inventory_items` SET `item_quantity` = '" . $_POST['input' . $x] . "' WHERE `Id` = '" . $row['bar' . $x] . "' ;";

您在Javascript中使用了+as。用于在php中合成。在代码中添加字符串和整数变量。

使用
mysqli.*
PDO
不足以阻止SQL注入。您需要清理查询中使用的变量,或者更好地使用参数化查询
 $quantity= $_POST['input'+$x];
$query= "UPDATE `inventory_items` SET `item_quantity` = '" . $_POST['input' . $x] . "' WHERE `Id` = '" . $row['bar' . $x] . "' ;";