我编写以下代码将值从一个表复制到另一个表但$ wpdb-> get_results没有返回任何内容。
function rating_convert() {
global $wpdb;
$likes = $wpdb->get_results('SELECT * FROM ' . $wpdb->prefix . 'up_down_comment_vote_totals', ARRAY_N);
foreach ($likes as $like) {
$wpdb->query('UPDATE ' . $wpdb->prefix . 'comment_rating SET ck_rating_up = ' . $like['vote_count_up'] . ' WHERE ck_comment_id = ' . $like['comment_id']);
$wpdb->query('UPDATE ' . $wpdb->prefix . 'comment_rating SET ck_rating_down = ' . $like['vote_count_down'] . ' WHERE ck_comment_id = ' . $like['comment_id']);
}
}
我已经使用echo函数测试了每一行。foreach行没有运行,我认为$ wpdb-> get_results是错误的。 请帮我。 抱歉我的英语不好。
答案 0 :(得分:1)
function comment_rating() {
global $wpdb;
$likes = $wpdb->get_results('SELECT * FROM ' . $wpdb->prefix . 'up_down_comment_vote_totals LIMIT 0, 1000', ARRAY_A);
foreach ($likes as $like) {
echo "id " . $like['comment_id'] . "<br>";
$wpdb->query('UPDATE ' . $wpdb->prefix . 'comment_rating SET ck_rating_up = ' . $like['vote_count_up'] . ' WHERE ck_comment_id = ' . $like['comment_id']);
$wpdb->query('UPDATE ' . $wpdb->prefix . 'comment_rating SET ck_rating_down = ' . $like['vote_count_down'] . ' WHERE ck_comment_id = ' . $like['comment_id']);
$wpdb->query('DELETE FROM ' . $wpdb->prefix . 'up_down_comment_vote_totals WHERE comment_id = ' . $like['comment_id']);
}
}