PDO版本问题 Invalid parameter number: no parameters were bound
发布:smiling 来源: PHP粉丝网 添加日期:2013-12-03 21:34:06 浏览: 评论:0
发现在客户的某个PHP版本下,执行某类操作的时候,总是会报如下错误 Invalid parameter number: no parameters were bound,经google,发现是php版本过低导致,正文:
今天在处理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上均表现正常,看来是单引号惹的祸。
Tags: PDO版本 Invalid parameter number
相关文章
- ·Invalid byte 1 of 1-byte UTF-8 sequence解决办法(2013-12-07)
- ·php下foreach()错误提示Warning: Invalid argument supplied for foreach()(2014-09-22)
- ·php解析xml提示Invalid byte 1 of 1-byte UTF-8 sequence错误的处理方法(2020-07-02)
- ·php下foreach提示Warning:Invalid argument supplied for foreach()的解决方法(2021-04-25)
- ·Parse error: syntax error, unexpected T_LNUMBER(2013-11-29)
- ·php使用NumberFormatter格式化货币的方法(2021-05-17)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)