0

我正在使用 $wpdb 连接到与我的 wordpress 不同的数据库,如下所示:

$newdb = new wpdb(DB_NEW_USER, DB_NEW_PASSWORD, DB_NEW_NAME, DB_NEW_HOST);

我需要在数据库中插入多行。我使用了这个答案中的代码:Wordpress $wpdb。插入多条记录

要运行查询,我使用这一行:

$newdb->query( $newdb->prepare("$query", $values));

当我这样做时echo $query,结果如下:(有超过 3 列,但如果出于时间考虑,我会缩短)

INSERT INTO table (column1, column2, column3) VALUES ('%s', '%s', '%s')

当 I 时var_dump($values),它返回一个数组,其字符串数量与我的列相同。

当我运行查询时,我收到以下错误:

WordPress database error: [Query was empty]

我尝试以类似的方式从数据库中进行选择,它确实有效,所以我连接到数据库的工作正常。

我究竟做错了什么?

如果有人可以帮助我,我将不胜感激。

4

1 回答 1

0

你确定你的查询看起来像这样吗?

$metakey = "Harriet's Adages";
$metavalue = "WordPress' database interface is like Sunday Morning: Easy.";

$wpdb->query( $wpdb->prepare( 
    "
        INSERT INTO $wpdb->postmeta
        ( post_id, meta_key, meta_value )
        VALUES ( %d, %s, %s )
    ", 
        array(
        10, 
        $metakey, 
        $metavalue
    ) 
) );
于 2013-08-08T17:24:51.403 回答