Как создать шаблон для подготовленных операторов для нескольких слов для MATCH AGAINST в PHP?
Я построил шаблон для подготовленного заявления для MATCH AGAINST
где я ищу одно слово. Подстановочный знак выглядит так:
$statement = $DB->prepare('SELECT * FROM users
WHERE firstname LIKE ?
AND lastname LIKE ?
AND MATCH (firstname, lastname) AGAINST (? IN BOOLEAN MODE)');
$statement->bind_param('sss', $firstname, $lastname, $searchString);
$statement->execute();
$result = $statement->get_result();
$statement->close();
Когда я ищу одно слово в AGAINST()
метод работает нормально. Но как создать подстановочный знак для поиска нескольких слов? Как то так тут
Select * FROM users WHERE firstname LIKE "d%" AND lastname LIKE "f%" and MATCH (firstname, lastname) AGAINST ("Jonny Bonny Conny Alex" IN BOOLEAN MODE)
Я попробовал это, построив единственную строку, но она не работает, в смысле не получая никакого результата, но если я помещаю это непосредственно в phpmyadmin, результаты получаются, и когда я помещаю одно слово, это тоже работает.
$searchStrng = "Jonny "."Bonny "."Conny "."Alex";
$statement = $DB->prepare('SELECT * FROM users
WHERE firstname LIKE ?
AND lastname LIKE ?
AND MATCH (firstname, lastname) AGAINST (? IN BOOLEAN MODE)');
$statement->bind_param('sss', $firstname, $lastname, $searchString);
$statement->execute();
$result = $statement->get_result();
$statement->close();
Так, пожалуйста, как создать шаблон для нескольких слов?