1
我無法更新MySQL數據庫與動態表格,我可以在提交表單之前添加或刪除行。使用動態表格輸入更新mySQL表格
我可以把它用硬編碼值,又不會當我試圖用while循環更新我似乎無法得到它的工作
我首先設置POST這樣
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
$link = mysqli_connect(//correct info);
if(mysqli_connect_error()){
die("Could not connect to database");
}
?>
<script type="text/javascript">
<?php
$arrLength= $_POST['arr'];
$x=0;
while ($x<$arrLength){
$query= "UPDATE `inventory_items` SET `item_quantity` = '" . $_POST['input'+$x] . "' WHERE `Id` = '" . $row['bar'+$x] . "' ;";
mysqli_query($link,$query);
$x++;
};
?>
硬代碼一行曾傷心嘗試這個樣子
<?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++;
};
?>
我怎麼會遍歷這了最新的值或者它會更好,如果設置爲一個數組,然後運行雖然
是有可能的$ X添加到名稱的末尾有點像
$quantity= $_POST['input'+$x];
感謝您的幫助
使用'mysqli_ *'或'PDO'不足以防止SQL注入。您需要清理查詢中使用的變量,或者甚至更好地使用參數化查詢 –