Вы не зашли.
Короч с базы бот берёт поиск по запросу
/Поиск название
ответ реализовал сначала так
Код:
WHERE track LIKE "%'.filter_var($_GET['search'], FILTER_SANITIZE_FULL_SPECIAL_CHARS).'%" |
выдаёт много говна похожего на слово, даже если оно в середине текста
попробовал так
Код:
WHERE track REGEXP "[[:<:]]'.filter_var($_GET['search'], FILTER_SANITIZE_FULL_SPECIAL_CHARS).'[[:>:]]" |
Если сказать ему одно слово выдаст то что надо, НО
если в запросе дать два слова с пробелом, вывалит тоже кучу ненужного "Добра"
Как запросить нормально чтобы выдало что что просишь?
Более того, если поиск важен (частая работа с текстом) можно использовать FULLTEXT индекс. Думаю, гугл подскажет, если заинтересует
ДАУН-Данная Аватара Унаследована Незнайкой
почему не использовать filter_var?
вроде заебись всё уберает
Код:
$stmt = $db->prepare('SELECT * FROM icecast2 WHERE hash = :hash AND file_id IS NOT NULL LIMIT 1'); |
$stmt->bindParam(':hash', $_GET['id'], PDO::PARAM_STR); |
$stmt->execute(); |
$files = $stmt->fetch(PDO::FETCH_ASSOC); |
а так?
это вариант https://chat.openai.com/chat
Отредактировано WapStyle (2023.02.07 18:06)
да, можно и так. хотя prepare полаконичнее.
Код:
$stmt = $db->prepare('SELECT * FROM icecast2 WHERE hash = :hash AND file_id IS NOT NULL LIMIT 1'); |
$stmt->execute(['hash' => $_GET['id']]); |
$files = $stmt->fetch(); |
Страниц: 1