请帮助我。
我收到了这个错误:
缺少wpdb :: prepare()
的参数2
对于这一行:
$myrows = $wpdb->get_results($wpdb->prepare("SELECT name, term_id
FROM wp_categoryindex
WHERE alpha IN ('0','1','2','3','4','5','6','7','8','9')"));
谢谢!
答案 0 :(得分:2)
为什么您同时使用get_results()
和prepare()
这两项功能?您是否了解这些功能?
我认为这可能对你有用。你可以试试这个:
$myrows = $wpdb->get_results("SELECT name, term_id
FROM wp_categoryindex
WHERE alpha IN ('0','1','2','3','4','5','6','7','8','9')");
或者
$myrows = $wpdb->prepare("SELECT name, term_id
FROM wp_categoryindex
WHERE alpha IN %s", "('0','1','2','3','4','5','6','7','8','9')");
$getData = $wpdb->get_var($myrows);
答案 1 :(得分:0)
好吧,在快速RT*M之后发现系统指出您缺少的第二个参数应该是支持sprint()-like
占位符的参数,而这些参数是您没有的。因此,您需要查看方法的文档,并考虑是否要使用替换功能或使用不需要替换功能的其他方法,例如query()。
参数
$查询 (字符串)(必需)使用sprintf()的查询语句 - 如占位符
的$ args (array | mixed)(必需)如果被调用为 http://php.net/vsprintf vsprintf(),则替换为查询占位符的变量数组,或者如果被调用,则替换为查询占位符的第一个变量 http://php.net/sprintf sprintf()。
的$ args,... (mixed)(必需)如果被调用为 http://php.net/sprintf sprintf(),则替换为查询的占位符。