我想执行如下查询:
$wpdb->prepare( "SELECT * ... from ... WHERE ( post_title LIKE \'%%%s%%\' or post_content LIKE \'%%%s%%\' )..., $string );
如果我只使用一个条件进行查询,它就会工作:
$wpdb->prepare( "SELECT * ... from ... WHERE ( post_title LIKE \'%%%s%%\' )..., $string );
我的第一个查询中有什么错误?
最合适的回答,由SO网友:Charles Clarkson 整理而成
我认为你的第一个部分代码就是这个部分代码:
$wpdb->prepare( "SELECT * ... from ... WHERE ( post_title LIKE \'%%%s%%\' or post_content LIKE \'%%%s%%\' )..., $string, $string );
必须向查询中传递与指定数量相同的参数(其中包含%s)。