gpt4 book ai didi

php - 如何将重复 key 与bind_param结合起来

转载 作者:行者123 更新时间:2023-11-29 20:53:16 26 4
gpt4 key购买 nike

嗨,我如何将On Duplicate Keymysqli_stmt_bind_param结合起来

$stmt = mysqli_prepare($con, "INSERT INTO assy (ItemID,partid,qty,rev,bomEntry) VALUES (?, ?, ?, 'A',?)  ON DUPLICATE KEY UPDATE partid=$bom");
mysqli_stmt_bind_param($stmt, "ssii", $itemid, $bom, $qty, $bomEntry) or die(mysqli_error($con));

$recordd = $tv->search(454545400000, 's=2');
//print_r($recordd);echo"1<br/>";
foreach($recordd as $data2) {
$itemid = $data2['fields']['CALC STOCK NO'];

$bomEntry = 1;
if ($data2['fields']['BOM WHEEL PN']) {
$bom = $data2['fields']['BOM WHEEL PN'];
$qty=1;
mysqli_stmt_execute($stmt) or die(mysqli_stmt_error($stmt));
$bomEntry++;
}

}

我尝试过类似的事情

 $stmt = mysqli_prepare($con, "INSERT INTO table_name  (ItemID,partid,qty,rev,bomEntry) VALUES (?, ?, ?, 'A',?) ON DUPLICATE KEY UPDATE patid=$bom;");
.
.
.

但它设置为空白

最佳答案

您的 $bom 是一个字符串,因此需要用引号引起来,或者最好将其从查询中交换出来并通过占位符绑定(bind)。这是占位符和绑定(bind)方法:

$stmt = mysqli_prepare($con, "INSERT INTO assy (ItemID,partid,qty,rev,bomEntry) VALUES (?, ?, ?, 'A',?) ON DUPLICATE KEY UPDATE partid=?"); 
mysqli_stmt_bind_param($stmt, "ssiis", $itemid, $bom, $qty, $bomEntry, $bom);

使用准备好的语句,您很少会在查询中需要变量。

关于php - 如何将重复 key 与bind_param结合起来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37845107/

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