Поиск…


замечания

Существует два способа ссылки на объект $wpdb . Первое - использовать ключевое слово PHP global , чтобы действовать на глобальный экземпляр объекта.

global $wpdb;
echo $wpdb->prefix;
// Outputs the prefix for the database

Второй способ использования объекта $wpdb - $wpdb супер глобальную переменную PHP $GLOBALS .

echo $GLOBALS['wpdb']->prefix;
// This will also output the prefix for the database

Второй способ обескуражен, так как его нельзя считать лучшей практикой.

Выбор переменной

В самой базовой форме можно выбрать одну переменную из таблицы, вызвав метод get_var объекта, передаваемый в SQL-запросе.

global $wpdb;
$user = $wpdb->get_var( "SELECT ID FROM $wpdb->users WHERE user_email='[email protected]'" );

Очень важно отметить, что любые ненадежные значения, используемые в запросах, должны быть экранированы для защиты от атак. Это можно сделать, используя метод prepare объекта.

global $wpdb;
$email = $_POST['email'];
$user = $wpdb->get_var(
    $wpdb->prepare( "SELECT ID FROM $wpdb->users WHERE user_email=%s", $email )
);
if( !is_null( $user ){
    echo $user; 
} else {
    echo 'User not found';
}

Выбор нескольких строк

Вы можете использовать get_results для получения нескольких строк из базы данных.

global $wpdb;
$userTable =$wpdb->prefix."users";

$selectUser = $wpdb->get_results("SELECT * FROM $userTable"); 

Это покажет список всех пользователей в массиве.



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow