Если нужно использовать db_select вместо db_query, но не ясно как правильно составить SQL условие с оператором LIKE, читайте далее.
Здесь вам пригодится хелпер функция db_like, которую нужно применить к аргументу сравнения.
Небольшой пример кода расставит всё на свои места:
1 2 3 4 5 6 7 8 9 10 11 |
$query = 'искомая строка'; $data = db_select('node', 'n') ->fields('n') ->condition('title', '%' . db_like($query) . '%', 'LIKE') ->execute() ->fetchAll(PDO::FETCH_ASSOC); drupal_json_output($data ); drupal_exit(); |
Здесь мы запрашиваем все публикации (node), фильтруя их по названию.