2014-09-07 3 views
0

У меня есть форма, где я получаю все пользователи, которые соответствуют определенным критериям (размер обуви от 9 до 15). Но иногда это может быть 1 пользователь, 5 пользователей или 0 пользователей в зависимости от критериев.Я хочу получить массив переменных из базы данных wordpress

У меня есть get_var, но он возвращает только 1 переменную, и он прерывает мой код, когда он возвращает несколько значений.

$woShoeMemberId = $wpdb->get_var(
    "SELECT user 
    FROM data 
    WHERE field=16 
    AND value BETWEEN ".$_POST['woShoes']." AND ".$_POST['woShoes2'].""); 

Как я могу превратить это в массив? Как $ woShoeMemberId будет содержать массив «пользователь» в зависимости от результатов поиска?

Кроме того, я тогда должен превратить эти идентификаторы в имена пользователей, которые я делаю на

$woShoeMember = $wpdb->get_var(
    'SELECT login 
    FROM users 
    WHERE ID='.$woShoeMemberId.''); 

такой же вопрос, как я могу превратить это в массив имен пользователей в зависимости от количества ИДС у меня есть?

+0

Из кода wpdb. 'Предупреждение. Как и со всеми функциями этого класса, которые выполняют SQL-запросы, вы должны SQL избежать всех входов, чтобы предотвратить атаки SQL-инъекций! Проверьте документацию, чтобы узнать, не работает ли функция, которую вы планируете использовать, для того, чтобы избежать SQL-запроса или не удалось сбежать из нее !!! ' –

ответ

0

Вместо get_var() использовать get_results() или get_col().

Метод get_var() всегда будет возвращать единственный результат.

Метод get_results() возвращает массив с объектами, которые содержат выбранные результаты

get_col() Метод возвращает массив с выбранными результатами.

+0

будут ли возвращать массивы? так что имея всего $ woShoeMemberId = $ wpdb-> get_results(), который превратит мою переменную в массив? или я должен инициализировать его как массив – user2981393

Смежные вопросы