问题标签 [bindvalue]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - Error with bindValue with the PDO class
I have the following php
script that does not work with bindValue, but works if I put the params into the SQL
string(i.e. if I use the commented line instead of the 6 lines later, it works).
It's the first time that I try to use this method, so it's probably a simple error, but what is it?
php - SELECT 不使用 PDO bindValue 检索数据
我只是想知道,有没有办法使用 PDO bindValue 选择不在数组中的数据。我的主要目的是防止 SQL 注入。
我的查询是这样的:
我已经尝试了上面的代码,但它不起作用。
php - PDO 的 bindParam、bindValue 和 foreach 可能存在的错误
我一直收到此代码错误。
如果 $ID (PrimaryKey) 默认不是 MySQL 数据库中的 AUTO-INCREMENTING 值,请注意以下事项。
除 DATETIME 字段外的所有字段在插入数据库时获取数组中最后一个元素的值。IE
ID = $LastName FirstName = $LastName MiddleName = $LastName LastName = $LastName RegisteredDate = $RegisteredDate
使用 bindValue 时也会输出相同的错误。
所以我最终使用
问题
建议使用 execute($array_Bind) 假设所有数据都已被清理,而不是在这种情况下使用 bindParam 或 bindValue?
如果没有,有没有办法使用 bindParam 或 bindValue 和数组?
这是一个错误还是错误的编码架构。
php - 为什么 PHP PDO bindValue 不绑定?
我有一个查询我的数据库的功能:
但是有些东西不起作用。这条线$this->_query->bindValue($x, $param);
没有做它应该做的事情。没有发生绑定。将参数放入函数的数组似乎很好。该$sql
声明也很好,并且正在返回:
这对于使用 bind 方法应该是完美的。但是经过 foreach 循环之后,什么都没有改变,_query var 仍然是一样的。所以根本不会进入数据库。我也树使用errorInfo并返回:
谁能给我一个线索我在这里想念什么?
php - Foreaching PDO bindValue / BindParam
我想让我的生活更轻松一些,就像在这篇文章中一样:
PDO::bindParam 在 foreach 循环中,所有值都设置为相同吗?
还有其他几个...
我尝试了几种变体来让我的代码工作(查看消息)但没有结果我必须在我的类中使用方法:
和另一个:
}
我试过了:
我试过了:
我也试过在 getMessages 方法中死掉('我在 getMessages 方法中');但我没能走到那一步……
我应该做些什么不同的事情来让这个代码工作?
我很感激任何帮助!
编辑:
我对最大 ID 不好,但声明最大 ID:
但解决这个问题并不能解决整个问题。如果是,第一种方法可以完美地工作:
但我想使用该方法,所以我不必手动 bindParam / BindValue,returnDataObject 方法的功能将使我的生活更轻松......
php - PDO bindValue 适用于其他输入,为什么不是这个?
我正在构建一个表单,用户可以在其中更新书籍的属性。有一个动态生成的 HTML 表单,用户可以在其中为“标题”、“作者”和“描述”等内容输入新值,如下所示:
这个表单由一些看起来像这样的 php 处理:
我将其组织为 switch 语句,因为表单中的代码仅传递已在 post 中更改的字段(“bookidfield”输入除外,它具有其中每个项目的唯一键。)开关,只运行必要的查询。
“标题”和“作者”字段工作正常;他们毫无问题地更新到新值。但是,“description”字段总是更新为“bookidfield”的值。如果我进入并手动将 ':bookid' 参数更改为我想要的书的 ID,我可以修复它。
如果我var_dump(_$POST)
似乎通过正确的键值来实现,如下所示:
但是在我的 SQL 表中,它将书名 184 更改为“Gross Boogers and such”,将作者更改为“Franny Panties”,但它会将描述更改为“184”。这与我对 bindValue() 的使用有关,对吧?还是与我的循环有关?表格是如何命名的?我已经看太久了,看不到它是什么。
感谢 Stackoverflow,你们很棒。
php - 致命错误:在非对象上调用成员函数 bindValue()
我得到了上面显示的错误。我查看了这个网站,但我找不到解决我问题的正确方法。
我正在尝试编写一个用户类。以下代码是我到目前为止的代码。
结果是以下错误,我不知道如何解决这个问题......
致命错误:在非对象上调用成员函数 bindValue()
编辑:
这是我使用它的方式:
旁注:session_start();
已加载。
php - 没有显式数据类型的 PHP PDO bindValue()
我正在开发一个使用面向 PDO 的 PHP 对象的应用程序。我一直在努力寻找查询执行失败的原因。事实证明,我提供了一个值作为字符串格式的参数,以绑定到一个数组中。我有一个通用循环,它将所有参数绑定到我的查询的问号占位符。那当然会考虑参数都是字符串格式的。但是我有整数格式的列。即使我使用(int)
or将变量转换为整数intval()
,它也不起作用。所以我相信我必须将明确的数据类型指定为PDO::PDO_PARAM_INT
. 但是我对所有查询都有这样的代码:
查询示例:
bindValue() 部分:
我该怎么做?我的意思是知道如何修改代码来解决这个问题?不确定我是否必须修改代码的哪一部分,但我很困惑地想到解决方法。先感谢您。
编辑:PHP 版本 5.3.10,PDO 连接到 Sybase
php - 在 php 中使用 PDO bindValue 插入
我正在尝试使用 PDO bindValue 但它不适用于我。
php - PDO BindValue 不起作用 - 执行不返回任何内容
我在 pdo 上遇到了一个大问题,似乎没有人能帮助我 - 所以我决定问你们 :-)
Database-Connection 完美运行,errorInfo() 都返回:
现在,这段代码不知何故没有得到任何 $row's。但是,如果我将准备语句替换为以下几行:
(并删除 bindValue 语句)代码就像魅力一样工作!
我不知道我做错了什么,因为根本没有抛出错误 - 你们中有人知道我可以尝试什么吗?
谢谢