gpt4 book ai didi

php - PDO - 动态绑定(bind)参数 - 值为 0 奇怪的结果

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

感谢这里用户的建议,我已经开始将我的代码移植到 PDO。一切都很顺利,直到出现了一个小问题。

我有一个小函数来处理我的数据库调用,它基本上生成 SQL 查询,执行 $dbh->prepare ($sql),然后循环并绑定(bind)值,然后执行查询。

$sth = $dbh->prepare ($sql);
// bind parameters
if ($action == 'insert' || $action == 'update') {
reset ($array);
foreach ($array as $key => &$value) {
if ($value != 'NOW()') {
$sth->bindParam (':' . $key, $value);
}
}
}
$sth->execute();

这工作正常,直到我需要插入值“0”。没有返回错误,但插入数据库的值是表中列类型的最大值,在本例中为“137”。

我希望有人能够解释正在发生的事情并提供解决方案,而不是仅仅给我一个修复程序,以便我可以更好地理解这一点。

干杯,卢克

最佳答案

您没有正确绑定(bind)参数,请查看 the manual .
您应该使用:

$sth->bindParam (':' . $value, [PARAM TYPE - example: PDO::PARAM_INT]);

关于php - PDO - 动态绑定(bind)参数 - 值为 0 奇怪的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11568181/

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