gpt4 book ai didi

php - 使用动态表输入更新 mySQL 表

转载 作者:行者123 更新时间:2023-11-29 00:00:10 26 4
gpt4 key购买 nike

我在使用动态表更新 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];

感谢帮助

最佳答案

将您的查询更新为:

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

您在 Javascript 中使用了 + 而 .用于在 php 中连接。在您的代码中,您正在添加一个字符串和整数变量。

关于php - 使用动态表输入更新 mySQL 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30178662/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com