gpt4 book ai didi

php - 带有特殊字符的 MySql 搜索

转载 作者:行者123 更新时间:2023-11-29 05:32:24 25 4
gpt4 key购买 nike

我使用 MySql 从数据库中搜索记录 -

SELECT * FROM tab WHERE col LIKE '%myvalue%';

这工作正常并显示所有具有 myvalue 的记录。

现在的问题是我有一些记录,例如 my'valuemyva'luemyval-uemy- value 并且还想在搜索中包含这些记录。此外,当我搜索 my'value 时,它应该显示 myvaluemy-value

如何实现?任何帮助。是否可以使用 LIKE 运算符?

最佳答案

当您使用 PHP 时,如果有人使用您的搜索,您应该执行以下操作:

  1. 通过$_POST获取搜索词
  2. 从搜索项中删除所有特殊字符(my'value 变为 myvalue)
  3. 用 MySQL 通配符替换搜索词(myvalue 变为 %m%y%v%a%l%u%e%)
  4. 执行 SELECT * FROM tab WHERE col LIKE '%m%y%v%a%l%u%e%'

任何其他解决方案都无法满足您的所有要求。

SQL fiddle :http://sqlfiddle.com/#!2/20f811/2

关于php - 带有特殊字符的 MySql 搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13623714/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com