Я хочу сделать запрос соответствия, в котором все слова строки должны быть необходимы, чтобы быть в поле, но он должен допускать ошибки или слова незавершенными.Match Against ... SEMI-Literall
Мой фактический сценарий таков:
$search= '+'.str_replace(" ","% +",$_POST["searchtext"]);
С этим я конвертировать «это мой текст» на «+ это + будет + мой + текст», так что все слова необходимы в поиске, и затем я сделать
$query = $dbh->prepare("SELECT name,surname MATCH (name,surname) AGAINST (:search IN BOOLEAN MODE) AS coincidences FROM users MATCH (name,surname) AGAINST (:search2 IN BOOLEAN MODE) ORDER BY coincidences");
$query->execute(array('search' => $search,'search2' => $search));
Проблема заключается в том, что если в моей БД есть «Стивен Хокинг» и я искать «Стивен Хок» это обыкновение появляться ... Как я могу это исправить?
Большое спасибо
Хотя этот фрагмент кода может решить вопрос, [включая пояснения] (HTTP: // мета. stackexchange.com/questions/114762/explaining-entirely-code-based-answers) действительно помогает улучшить качество вашего сообщения. Помните, что вы отвечаете на вопрос читателей в будущем, и эти люди могут не знать причин вашего предложения кода. – gunr2171