0

我用$wpdb->prepare. 目前这个查询是在一个函数中运行的,所有的变量都从我在 wordpress 中的 page.php 文件传递​​给函数。以下查询有效。但是我的问题是我是否需要%s在我的变量上使用$field1, $field2,等...如果有人可以帮助我如何设置它,当我尝试时它不起作用。如果没有,有人能告诉我为什么不吗?谢谢!

$query = $wpdb->prepare("SELECT DISTINCT wp_eva_geography.$field1, wp_eva_geography.$field2 
FROM wp_eva_geography
WHERE wp_eva_geography.$field3=%s AND wp_eva_geography.$field4=%s",$type,$geo_no_dash);
$results = $wpdb->get_results( $query );

4

1 回答 1

0

使用参考文档来了解它是如何工作的。

在您的特定情况下,可能值得只回显 MySQL 查询字符串,以便您可以看到它实际尝试请求的内容。然后,您可以发现是否出现问题,例如错误的列名或值条目。

http://codex.wordpress.org/Class_Reference/wpdb

$wpdb->query( 
    $wpdb->prepare( 
        "DELETE FROM $wpdb->postmeta
         WHERE post_id = %d
          AND meta_key = %s",
         13, 'gargle' 
    )
);
于 2013-01-07T07:51:41.297 回答