2015-09-04 6 views
0

Столбцы базы данных: имя пользователя ID пользователя | имя пользователя | UserPass | возраст | пол | я строю запрос, чтобы выбрать несколько результатов в одном запросеНастройка запроса базы данных

global $wpdb; 

    $res = $wpdb->get_results($wpdb->prepare(
     "SELECT name, lastname 
     FROM datatable 
     WHERE userID in (%d , %d) 
     AND 
     UserPass in (%d, %d )", 
     array(
      $val[1], 
      $val[2], 
      $val[3], 
      $val[4], 
     ) 

     ), 
     ARRAY_A 
    ); 

где $ вал [1] и $ Вэл [2] следует Uset, как идентификатором пользователя и $ Вэл [3] и $ Вэл [4] UserPass , И я думаю, что у меня проблема с заказом значений placeholder и что запрос не настроен должным образом, мог бы воспользоваться советом.

+0

сво простое утверждение PDO или слово-пресс подготовить заявление? –

+0

его просто, я использовал подготовку только из-за заполнителей – Dkikas

ответ

1

Попробуйте с этим:

$querystr = " 
    SELECT name, lastname 
     FROM datatable 
     WHERE userID in ('your user ids implode with commas') 
     AND 
     UserPass in ('password string implode with commas ') 
"; 

$result = $wpdb->get_results($querystr, OBJECT); 
0

Этот запрос возвращает всех пользователей, соответствующих указанным паролям.

<?php 
    global $wpdb; 

    $res = $wpdb->get_results($wpdb->prepare(
     "SELECT name, lastname, UserPass 
     FROM datatable 
     WHERE userID in (%d , %d) 
     HAVING UserPass in (%d, %d )", 
     array(
      $val[1], 
      $val[2], 
      $val[3], 
      $val[4], 
     ) 

     ), 
     ARRAY_A 
    ); 
?> 

Возможно, это помогает?

+0

Мне нужно только имя и фамилию, и я хотел знать, что это было, если структура хороша, и если значения placeholder хороши, так что если ГДЕ userID in ($ val [1], $ val [2]) AND UserPass in ($ val [3], $ val [4]) "имеет этот порядок чтения – Dkikas

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