Я некоторое время оглядывался и пробовал разные вещи, и мне не повезло.
Сценарий: у меня есть WordPress / BuddyPress, и я добавил несколько новых таблиц в базу данных через phpMyAdmin. Я не могу выполнить успешный запрос к ним, но я могу ко всем исходным таблицам. Я перепробовал много вещей, это моя самая последняя попытка, все еще не работает:
$b1_exc = $wpdb->get_results( $wpdb->prepare("SELECT * FROM memberbadge
WHERE 1") );
Я был бы очень признателен за решение добавить пользовательские таблицы и иметь возможность запрашивать их.
Заранее спасибо!
Это, вероятно, проблема с префиксом.
Пытаться:
$wpdb->get_results( "SELECT * FROM {$wpdb->prefix}memberbadge") );
Если вам действительно нужно WHERE
предложение и переменная приходит из пользовательского ввода, затем используйте prepare
,
Начиная с 3.5, wpdb :: prepare () применяет минимум 2 аргумента.
Это правильный синтаксис для wpdb :: prepare (), используйте это.
$result = $wpdb->get_results( $wpdb->prepare("SELECT * FROM memberbadge WHERE %d", 1) );