PDO 准备语句绑定

邵汗

我有一个数据数组,例如:

$data = ['ver_weather' => $post["weathercondition"],
         'ver_flash'   => $post["flashintense"],
         'ver_earth'   => $post["earthrumble"]]

我在 sql 中使用的这些数据如下:

$sql = "INSERT INTO `database`.`table` (`weather`, `flash`, `earth`)
        VALUES (:ver_weather, :ver_flash, :ver_eart)";

$pdo->prepare($sql)->execute($data);

结果是这样的:

INSERT INTO `database`.`table` (`weather`, 'flash', `earth')
VALUES ('1'weather, '1'flash, '1'earth)

那么 pdo 是否用值替换了我的部分密钥?

有什么问题吗?

谢谢你的协助。

詹姆斯·C

编辑: Execute 确实适用于命名绑定,因此您可以像这样编辑 $data 数组:

$data = [':ver_weather' => $post["weathercondition"],
         ':ver_flash'   => $post["flashintense"],
         ':ver_earth'   => $post["earthrumble"]]

注意:在每个键的开头

原答案如下...

我认为问题在于您试图按名称绑定,并且我认为 PDOStatement 不支持命名绑定。我建议尝试以下方法:

$data = [$post["weathercondition"], $post["flashintense"], $post["earthrumble"]];
$sql = "INSERT INTO `database`.`table` (`weather`, `flash`, `earth`)
        VALUES (?, ?, ?)";

$pdo->prepare($sql)->execute($data);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在准备好的语句PDO PHP中绑定值数组

来自分类Dev

PDO多参数绑定准备好的语句

来自分类Dev

PDO准备语句功能

来自分类Dev

PDO准备语句功能

来自分类Dev

PDO准备语句搜索错误

来自分类Dev

PHP PDO多重准备语句

来自分类Dev

无法将INT绑定到PDO准备的LIMIT和OFFSET语句

来自分类Dev

PDO 准备语句为不同的查询绑定一次参数

来自分类Dev

PDO准备语句:替换列的值

来自分类Dev

PDO准备的语句和数组中的bindValues

来自分类Dev

SELECT PDO准备语句中的SELECT

来自分类Dev

具有Int Cast的PDO准备的语句

来自分类Dev

PDO在UPDATE Multiple ID中准备的语句

来自分类Dev

PDO准备的语句插入数据库

来自分类Dev

具有%和限制的PDO准备的语句

来自分类Dev

PHP PDO准备语句参数导致错误

来自分类Dev

具有%和concat的PDO准备的语句

来自分类Dev

检查准备好的语句PDO的结果?

来自分类Dev

我正在尝试将数组值绑定到php pdo中的一个准备好的语句,但仅绑定的数组的第一个元素

来自分类Dev

PHP PDO准备的语句给出“无效语法”错误

来自分类Dev

从准备好的语句中获取文本(PHP,PDO)

来自分类Dev

使用PDO准备语句在MySQL中插入BIT值

来自分类Dev

PDO准备好的语句fetch()返回双精度结果

来自分类Dev

避免多次准备相同的PDO语句的最佳方法?

来自分类Dev

向准备好的SQL语句PDO添加偏移

来自分类Dev

PDO准备好的语句不返回记录

来自分类Dev

执行准备的语句但插入值时引发PDO异常

来自分类Dev

在PDO准备好的语句中验证password_hash()

来自分类Dev

是否可以计算PDO准备语句中的参数数量?