Php 更新查询,更新多个数据
我想使用这段代码更新多个数据,但问题是,当我尝试它时,它会更新具有相同类别id的所有数据,并且应该单独更新。解决办法是什么。请帮忙。提前感谢:)Php 更新查询,更新多个数据,php,mysql,Php,Mysql,我想使用这段代码更新多个数据,但问题是,当我尝试它时,它会更新具有相同类别id的所有数据,并且应该单独更新。解决办法是什么。请帮忙。提前感谢:) 您需要将主键添加到要更新的行的WHERE子句中,现在您只需使用某个类别id更新所有行 因此,将主键id添加到表中(如果您的表还没有主键),并将其设置为自动递增。然后修改select查询: "SELECT id, specs, category_id, price FROM specs WHERE category_id='$targetID'" 将该
您需要将主键添加到要更新的行的WHERE子句中,现在您只需使用某个类别id更新所有行
因此,将主键id
添加到表中(如果您的表还没有主键),并将其设置为自动递增。然后修改select查询:
"SELECT id, specs, category_id, price FROM specs WHERE category_id='$targetID'"
将该id
添加到隐藏的输入字段中
然后可以修改更新查询,如下所示:
"UPDATE specs SET specs='$specs', price='$price' WHERE category_id='$pid' AND id='$id'"
SQL注入警报
您还应该知道,您所编写的代码非常危险,并且容易出错。永远不要在查询中直接使用GET/POST变量。请使用或。你能不能只提到查询,我可以编辑它来做这件事,但如果你把问题分开就好了。你有查询更新规格集规格='$specs',价格='$price'其中category_id='$pid'
对于category_id有一个WHERE条件,因此,它将更新所有具有该类别id的记录。这里有什么问题!你能解释一下吗!它假设只更新一个数据,我在想我是否应该使用一个数组来分别更新它们,以及如何使用它。很抱歉,我只是一个php初学者。你问这个问题是因为对mysql有疑问,如果你能单独发布查询,并给出预期结果和实际结果,那会有帮助。同一个类别id上有3个数据,我想分别更新。谢谢你提供的信息。但是如何在隐藏的输入字段中添加id呢?
"SELECT id, specs, category_id, price FROM specs WHERE category_id='$targetID'"
"UPDATE specs SET specs='$specs', price='$price' WHERE category_id='$pid' AND id='$id'"