Drupal OR запрос - PullRequest
       14

Drupal OR запрос

0 голосов
/ 29 декабря 2011

Я построил этот запрос, но я получаю странную ошибку, кто-нибудь может мне помочь, пожалуйста?

$or = db_or()
            ->condition('title', 'test', 'LIKE')
            ->condition('author', 'test', 'LIKE')
            ->condition('service', 'test', 'LIKE')
            ->condition('content', 'test', 'LIKE');

    $query = db_select('magazine_articles')
            ->condition($or)
            ->execute();
    return $query;

PDOException: SQLSTATE [42000]: синтаксическая ошибка или нарушение прав доступа: 1064 В синтаксисе SQL есть ошибка; проверьте руководство, соответствующее вашей версии сервера MySQL, чтобы узнать правильный синтаксис для использования рядом с 'FROM magazine_articles magazine_articles WHERE ((название LIKE' test 'ESCAPE' \ '' в строке 1: SELECT FROM {magazine_articles} magazine_articles WHERE ((название LIKE: db_condition_placeholder_0 ESCAPE '\') ИЛИ (автор LIKE: db_condition_placeholder_1 ESCAPE '\') ИЛИ (сервис LIKE: db_condition_placeholder_2 ESCAPE '\') ИЛИ (content LIKE: db_condition_placeholder_3 ESCAPE '\' => условие Array'____d_D_L_W_W_D_F_L_F); [: db_condition_placeholder_1] => test [: db_condition_placeholder_2] => test [: db_condition_placeholder_3] => test)

1 Ответ

3 голосов
/ 29 декабря 2011

Вы не указали поля для выбора, попробуйте это:

 $or = db_or()
        ->condition('title', 'test', 'LIKE')
        ->condition('author', 'test', 'LIKE')
        ->condition('service', 'test', 'LIKE')
        ->condition('content', 'test', 'LIKE');

 $query = db_select('magazine_articles','n')->fields('n')
        ->condition($or)
        ->execute();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...