gpt4 book ai didi

php - 数组更新语句清空 SQL 表中的记录。 - 更新

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

我有一个食谱数据库,您可以在每个数据库上编辑食谱并在单独的表中添加删除的成分及其数量。

我有一个插入语句,非常适合向数据库添加新项目。

但我想在更新食谱时对此进行调整。我有一个更新语句,但如果我添加新成分,它也需要插入 - 同样,我需要删除我删除的任何行。

我已经调整了 SQL 语句并像对原始插入语句所做的那样破坏数组,但是当我提交时,它会清空 SQL 表中的所有条目,从而丢失所有内容。

我已经附上了完整的代码,以防万一我遇到了这个错误,因为我不确定即使修复它也会给我带来我需要的结果。

$DishID=$_GET['DishID'];

$sql="UPDATE Dishes
SET DishName='$DishName',
DishCatID='$DishCatID',
Serving='$Serving',
SRP='$SRP',
Method='$Method',
SourceID='$SourceID'
WHERE DishID='$DishID'";
$result = mysqli_query($con,$sql) or die(mysqli_error($con));

$array = array('$DishID'=>$DishID,'$IngID'=>($_POST['IngID[]']),'$Volume'=>($_POST['Volume[]']) );

$values = array();
foreach ($_POST['IngID'] as $i => $ingID) {
if (!empty($ingID)) {
$ingID = mysqli_real_escape_string($con, $ingID);
$volume = mysqli_real_escape_string($con, $_POST['Volume'][$i]);
$values[] = "('$DishID', '$ingID', '$volume')";
}
}
if (!empty($values)) {
$sql2 = "UPDATE DishIng
Set DishID=('$DishID'),
IngID= ('$IngID'),
Volume=('$Volume')";
mysqli_query($con, $sql2) or die(mysqli_error($con));–
}

最佳答案

使用此代码检查您的语法 mysql update manual

UPDATE DishIng Set DishID = 'xx', IngID = 'yy', Volume='zz'

并且不使用此代码

UPDATE DishIng Set (DishID, IngID, Volume) VALUES

关于php - 数组更新语句清空 SQL 表中的记录。 - 更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26674809/

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