WordPress 3.5 版本中 wpdb::prepare() 报错问题

作者:匿名 hihi 来源:磊子的博客 浏览: 2012-12-25 11:06:04 字号:
[摘要]本文主要讲述了升级至 wordpress 3.5 版本中出现的 wpdb::prepare() 报错问题,并提出了解决方法。

  WordPress 3.5 最新版本发布已经有好几天了,最近一直想着将自己的网站博客进行更新,但是想了想还是慎重点好,于是自己在本地测试了一番,果不其然发生了错误。错误如下:

<?php  
Warning: Missing argument 2 for wpdb::prepare(), called in xxx.php on line 75 and defined in /www/wp-includes/wp-db.php on line 990
?>

  上面的警告信息说是这个函数缺少第二个的参数。于是去官网看看是不是有这方面的内容,在 http://make.wordpress.org/core/2012/12/12/php-warning-missing-argument-2-for-wpdb-prepare/ 这个地方找到了修改的方案,而且也有不少朋友已经解决了这个问题。磊子偷了个懒,找了一篇内容给大家看下,如果你也更新wordpress最新版本后,遇到这个问题,不妨试试下面的方法。

  首先是最简单的一种,屏蔽这个警告信息,在你博客下的wp-config.php中填入如下代码,如果已存在修改成下面的。

@ini_set('display_errors', 0);

  这个只是起到屏蔽作用,如果想让它正常工作可使用下面的方法。

  问题代码:

$wpdb->prepare( "SELECT * FROM table WHERE id = $id" );

  解决后的代码:

$wpdb->prepare( "SELECT * FROM table WHERE id = %d", $id );

  将第二个参数添加上去,来传递值,使用prepare无非是想SQL更为安全。所以大家如果遇到这个问题,不妨试试上面的方法。如果你的SQL里面参数多,可以类似下面的这种来写。

$wpdb->prepare( "SELECT * FROM table WHERE ID = %d AND name = %s", $id, $name );

  好了,今儿主要就说说这个。

  原文地址:http://www.favortt.com/wordpress3-5-prepare.html

  • 软件大小:6.28MB
  • 软件类别:国外软件 | 博客系统
  • 软件语言:简体中文
  • 运行环境:PHP/Mysql
  • 软件授权:免费版
  • 更新时间:2013-7-24 16:05:30
  • 相关链接:Home Page

sssss
Tags: wordpress   prepare报错  
责任编辑:mcwm
编辑推荐排行