Php 将值更新到数据库中
我无法将值更新到数据库中。这里的问题是,当我更新所有行的数据时,最后一行的数据将更新到第一行。其他行(包括最后一行)将不会更新。 下面是我的代码更新Php 将值更新到数据库中,php,Php,我无法将值更新到数据库中。这里的问题是,当我更新所有行的数据时,最后一行的数据将更新到第一行。其他行(包括最后一行)将不会更新。 下面是我的代码更新 $sql = "SELECT * FROM product where username = '$username'"; $result = mysqli_query($con, $sql) or die(mysqli_error($con)); $rows = mysqli_fetch_array($result); $id = $rows[
$sql = "SELECT * FROM product where username = '$username'";
$result = mysqli_query($con, $sql) or die(mysqli_error($con));
$rows = mysqli_fetch_array($result);
$id = $rows['pro_id'];
$boxid = $rows['box_id'];
$name = $_POST['pro_name'];
$quan = $_POST['pro_quan'];
$sold = $_POST['pro_sold'];
for ($i = 0; $i < count($_POST['pro_name']); $i++)
{
$sql = "UPDATE product
SET pro_name = '" . $name[$i] . "',
pro_quan = " . $quan[$i] . ",
pro_sold = " . $sold[$i] . "
WHERE pro_id = " . $id . "
AND box_id = '" . $boxid . "' ";
$results=mysqli_query($con, $sql);
}
$sql=“从产品中选择*,其中username='$username';
$result=mysqli_query($con,$sql)或die(mysqli_error($con));
$rows=mysqli\u fetch\u数组($result);
$id=$rows['pro_id'];
$boxid=$rows['box_id'];
$name=$\u POST['pro\u name'];
$quan=$_POST['pro_quan'];
$selled=$_POST['pro_selled'];
对于($i=0;$i
所以,我不知道出了什么问题。感谢您的帮助您需要将结果放入循环中。 诸如此类:
$sql = "SELECT * FROM product where username = '$username'";
$result = mysqli_query($con, $sql) or die(mysqli_error($con));
while ($rows = mysqli_fetch_array($result))
{
$id = $rows['pro_id'];
$boxid = $rows['box_id'];
$name = $_POST['pro_name'];
$quan = $_POST['pro_quan'];
$sold = $_POST['pro_sold'];
for ($i = 0; $i < count($_POST['pro_name']); $i++)
{
$sql = "UPDATE product
SET pro_name = '" . $name[$i] . "',
pro_quan = " . $quan[$i] . ",
pro_sold = " . $sold[$i] . "
WHERE pro_id = " . $id . "
AND box_id = '" . $boxid . "' ";
$results = mysqli_query($con, $sql);
}
}
$sql=“从产品中选择*,其中username='$username';
$result=mysqli_query($con,$sql)或die(mysqli_error($con));
while($rows=mysqli\u fetch\u数组($result))
{
$id=$rows['pro_id'];
$boxid=$rows['box_id'];
$name=$\u POST['pro\u name'];
$quan=$_POST['pro_quan'];
$selled=$_POST['pro_selled'];
对于($i=0;$i
意味着如果我想使用查询更新数据库中的所有行,表的最后一行中的数据将更新为第一行。这意味着第一行od数据将被最后一行的更新数据替换。根据您的要求,我得到了以下信息:“当您更新最后一条记录时,数据将被更新到数据库中的第一条记录中。这是您想要说的吗?这是您的问题吗?”请澄清,以便能够提供相同的解决方案。你的问题不太清楚。是的,这就是我面临的问题。其他行数据没有更新到以前,这段代码工作了,但在我编辑了一些内容并将其更改回后,它就不再工作了。我的结果位于循环中。您需要在while循环中获取行,请查看我的代码。