我正在尝试使用PHP脚本写入数据库表。这是我的代码:
$tablename = $wpdb->prefix.'test';
$wpdb->insert( $tablename, array(
'id' => DEFAULT,
'post_id' => $post_id,
'user_id' => $user_id,
array( '%s', '%s', '%s' )
));
尝试我的代码后,出现以下错误:
[29-Sep-2018 17:34:29 UTC] PHP Parse error: syntax error, unexpected 'DEFAULT' (T_DEFAULT) in C:\xampp\htdocs\wordpress\wp-content\themes\DiviChild\test.php on line 32
我的表有一个主键“ id”,应该是自动递增的。我不知道我在做什么错。
答案 0 :(得分:1)
如果将“ id”设置为自动递增,则在插入记录时无需包括'id'=>DEFAULT,
。插入新记录后,它将在您的表中自动设置。
看来论点有误。
$wpdb->insert
接受3个参数,似乎您已经将3rd参数包含在2nd参数中。
$wpdb->insert( $tablename,
array(
'post_id' => $post_id,
'user_id' => $user_id
),
array( '%d', '%s' )
);
删除了id
,因为它是自动递增的,并且修改了格式化数组,并根据您的评论假定post_id
为数字。