gpt4 book ai didi

php - PDO MySQL php foreach 循环

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

我使用 foreach 循环更新单个 mysql 记录,该循环获取 $_POST 变量的名称和值,并更新当时的记录列,$_POST 变量的名称与 mysql 列名称相同

这是代码

foreach ($_POST as $key => $value)  {  
$value = mysqli_real_escape_string($con, $value );
$value = strip_tags($value);
$sql="UPDATE properties SET $key = '$value' WHERE propertyID='$propertyID'";
$query = mysqli_query($con, $sql);
if (mysqli_errno($con)){$error=1;}
}//end foreach loop
unset($value);
unset($key);

这很好用

但是我正在尝试将循环转换为使用 PDO。我已经尝试查看以前关于此主题的帖子,但仍然无法使其工作

这是我尝试过的代码:

foreach ($_POST as $key => $value) {  
$value = mysqli_real_escape_string($con, $value );
$value = strip_tags($value);
$sql="UPDATE vendors SET $key = '$value' WHERE vendorID='$vendorID'";
$stmt = $pdo->prepare($sql);
$stmt->bindValue($key, $value); //have also tried bindParam!!
$stmt->execute();
}//end foreach loop
unset($value);
unset($key);

这会运行,但不会更新任何列,有人可以帮忙吗?

谢谢

鲍勃

最佳答案

你没有正确绑定(bind)值,这样做:

$sql="UPDATE vendors SET $key = :value WHERE vendorID='$vendorID'";
$stmt = $pdo->prepare($sql);
$stmt->bindValue(':value', $value); //have also tried bindParam!!

关于php - PDO MySQL php foreach 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31855330/

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