PDO版本问题 Invalid parameter number: no parameters were bound
2013-01-06 15:09
549 查看
今天在处理bug的时候发现某一个很奇怪的问题,在执行某类操作的时候会报:Invalid parameter number: no parameters were bound,但是该问题在本地或是测试机上测试都没有重现,猜想是否和版本有关,于是就google了下,发现http://forum.typecho.org/topic.php?id=1501 该文的二楼说道,该问题是版本的bug,在php5.2.9以下的pdo中会出现。于是就是找了团队中另外一位同时的机子(5.2.6)做测试,果然重现该问题,他的服务器上5.2.17上测试,该问题没有出现。
在调试的时候,发现出现该类操作的时候有如下业务报以上错误:
用PDO往表nw_log(表字段一些列uid之类的,及content字段)中插入一条数据,其中content字段的内容为<a href='http://a.xxx/?tid=1'>test</a>,并且在入库之前表字段的内容会调用PDO->quote方法进行转义。在php5.2.6机子上则报如上错误,但是在5.2.17机子上表现正常。
当我仅仅只是将内容修改为http://a.xxx/?tid=1的时候,在5.2.6机子上和5.2.17机子上均表现正常,于是再次将内容格式调试为<a href="http://a.xxx/?tid=1">test</a>,则5.2.6及5.2.17上均表现正常,看来是单引号惹的祸。
相关文章推荐
- PDO版本问题 Invalid parameter number: no parameters were bound
- 出现Invalid parameter number: no parameters were boundStack
- 源码剖析Yii错误 Invalid parameter number: no parameters were bound
- __invalid_parameter_noinfo vs2005 vc8 问题解决办法
- [版本管理]有惊无险修复svn服务器Invalid filesystem revision number问题
- 如何解决apt-get update出现The following signatures were invalid: NODATA 1 NODATA 2问题
- BIRT出现java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0)的问题
- 解决ava.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0)类似问题
- php pdo错误:SQLSTATE[HY093]: Invalid parameter number: parameter was not defined
- Invalid parameter number: number of bound variables does not match number of tokens
- __invalid_parameter_noinfo vs2005 vc8 问题解决办法
- ibatis 中遇到的 Parameter index out of range (13 > number of parameters, which is 12).问题
- ThinkPHP5更新数据遇到SQLSTATE[HY093]: Invalid parameter number: mixed named and positional parameters
- MyBatis执行sql时,出现Parameter index out of range (1 > number of parameters, which is 0)?问题
- 关于出现No Hibernate Session bound to thread问题的记录
- Invalid bound statement (not found) 问题处理
- springmvc+mybatis 诡异问题 Invalid bound statement (not found)
- Dynamics CRM2013 Server2012下部署ADFS和IFD遇到的问题No Organization were retrived
- Caused by: java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0
- mybatis一个怪异的问题: Invalid bound statement not found":