mysql запрашивают против подстановочного знака

У меня есть запрос mysql в php, с помощью соответствия / против отфильтровать результаты. Я пытаюсь получить подстановочный знак после того, как $string так следующий символ сможет быть чем-либо.Помощь?

"SELECT * FROM $table WHERE MATCH (message) AGAINST('$string%' IN BOOLEAN MODE)"
6
задан David 23 February 2010 в 00:19
поделиться

2 ответа

Используйте * вместо % в качестве подстановочного знака при использовании ПОИСКПОЗ (...) ПРОТИВ (...) :

"SELECT * FROM $table WHERE MATCH (message) AGAINST('$string*' IN BOOLEAN MODE)"
6
ответ дан 16 December 2019 в 21:38
поделиться

Не вставляйте переменные в строки с двойными кавычками, и все готово:

"SELECT * FROM " . $table . " WHERE MATCH (message) AGAINST ('" . $string . "%' IN BOOLEAN MODE)"

При этом , Я не могу подтвердить, что это правильный SQL. Но, по крайней мере, это обеспечит правильное расширение вашей переменной, и если это не сработает, то это будет не из-за PHP.

И на всякий случай, если это напоминание будет полезно, не забудьте экранировать данные, которые входят в запрос .

2
ответ дан 16 December 2019 в 21:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: