[英]update few row table from array value
$array = Array();
$query = $conn->query("
SELECT P.email,P.kodeunik FROM peserta P
LEFT JOIN konfirmasi K ON K.nominal=P.kodeunik
LEFT JOIN detailbca D ON D.mutasi =P.kodeunik
where P.paid='0' AND K.paid='0' AND D.paid='0'");
while($result = $query->fetch_assoc()){
$array[] = $result;
}
$email = implode(',', array_column($array, 'email'));
$nominal1 = implode(',', array_column($array, 'kodeunik'));
echo $nominal1; // 215003,215004,215005
现在我想要更新表,如果有几个来自$nominal1的数字,在这种情况下,3 行表将被更新
$array1=$nominal1;
$sql1 = "UPDATE detailbca SET paid='1'
WHERE mutasi IN (' . implode(',', array_map('intval', $array1)) .";
$sql1 = $conn->query($sql);
这个查询不起作用,有什么问题?
无需再次使用implode()
。
您可以在$array
的kodeunik列上执行这种方式array_column()
,然后使用intval
的array_map()
并最终使用implode()
它使用,
。
$email = "'" . implode("','", array_column($array, 'email')) . "'";
$nominal1 = implode(',', array_map('intval',array_column($array, 'kodeunik')));
$sql1 = "UPDATE detailbca SET paid='1' WHERE mutasi IN ($nominal1)";
$sql1 = $conn->query($sql);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.