gpt4 book ai didi

php - 从两个不同的表中更新多个具有相同 id 的数据

转载 作者:行者123 更新时间:2023-11-30 22:51:47 25 4
gpt4 key购买 nike

我的 table 是这样的

maklumatakaun    |   detailakaun
----------------------------------
id(A.I) | idDetail(A.I)
NoAkaun | KodLokasi
KodBahagian | NoTelefon
KodKategori | KodJenisAkaun
KodKategori | id
Tarif |

我正在尝试同时更新两个表(maklumatakaun、detailakaun)中的数据,在 detailakaun 中有列“KodLokasi”、“KodJenisAkaun”和“NoTelefon”,在一个 ID 下可能有多个数据条目。这是我到目前为止得到的

提取($_POST);

如果($_POST){

$NoAkaun            = isset($_POST['NoAkaun'])          ? $_POST['NoAkaun'] : '';
$KodBahagian = isset($_POST['KodBahagian']) ? $_POST['KodBahagian'] : '';
$Tarif = isset($_POST['Tarif']) ? $_POST['Tarif'] : '';
$KodDaerah = isset($_POST['KodDaerah']) ? $_POST['KodDaerah'] : '';
$KodKategori = isset($_POST['KodKategori']) ? $_POST['KodKategori'] : '';
$NoTelefon = isset($_POST['NoTelefon']) ? $_POST['NoTelefon'] : '';
$KodLokasi = isset($_POST['KodLokasi']) ? $_POST['KodLokasi'] : '';
$KodJenisAkaun = isset($_POST['KodJenisAkaun']) ? $_POST['KodJenisAkaun'] : '';
$akaun_id = isset($_POST['akaun_id']) ? $_POST['akaun_id'] : '';






$sql = mysql_query("UPDATE maklumatakaun
SET NoAkaun = '$NoAkaun' ,
KodBahagian = '$KodBahagian' ,
KodDaerah = '$KodDaerah' ,
KodKategori = '$KodKategori' ,
Tarif = '$Tarif' ,
WHERE id = '$id'");
$akaun_id = mysql_insert_id();
foreach ($NoTelefon AS $i => $telefon){
$sql= mysql_query ("UPDATE detailakaun
SET KodJenisAkaun = '$KodJenisAkaun[$i]' ,
KodLokasi = '$KodLokasi[$i]' ,
NoTelefon = '$telefon'
");

此代码将更新两个表中的所有列,但可以说一个帐户已经注册了 3 个“KodLokasi”、“KodJenisAkaun”和“NoTelefon”,然后当仅使用 3 个列中的一个进行更新时,它将重复自身到 3. 我怎样才能正确更新它?

最佳答案

如何正确更新?

使用 mysqliPDO 而不是弃用的 mysql 接口(interface)。

不要通过对在调用处无效的函数进行无意义的调用来覆盖帖子中变量的值。

在您的UPDATE 语句中使用WHERE 子句来标识您需要更新哪些 行。或者,如果这两个表通过某些列集相关联,则使用连接操作来识别行。

为了爱这个世界上所有美好的事物...停止编写易受 SQL 注入(inject)攻击的代码。停下来。将准备好的语句绑定(bind)占位符一起使用。如果您坚持使用不支持准备好的语句的接口(interface),请正确转义 SQL 文本中包含的不安全值。

这就是正确更新它的方法。

关于php - 从两个不同的表中更新多个具有相同 id 的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27976680/

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