query("SELECT id FROM filter WHERE filter LIKE '%". $Properties['-6ren">
gpt4 book ai didi

php - MySQL "LIKE"子句用于过滤字符串

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

我正在尝试为我的网站创建一个过滤系统。当前的代码如下所示:

$DB->query("SELECT id FROM filter WHERE filter LIKE '%". $Properties['Title'] ."%'");

if($DB->record_count() != 0) {
$Err = '[b]Cannot upload this![/b]';
include(SERVER_ROOT . '/sections/upload/upload.php');
die();
}

*注意:$DB->record_count = 覆盖 mysqli_num_rows 的函数

因此,我们将 $Properties 设为上传元素的属性,从而将 Title 设为字符串标题

例如,上传可以是:我和我的狗在湖边

过滤器数据库中有一条记录:我和我的狗

该代码的目的是出错并且不允许上传继续。

最佳答案

如果我理解正确,你可以使用这样的查询来完成

SELECT COUNT(*) matches
FROM filter
WHERE 'Me.And.My.Dog.At.The.Lake' LIKE CONCAT('%', filter, '%')

注意:

  1. LIKE进行比较时反向上传名称和过滤器
  2. 使用 COUNT() 仅返回结果集中的行数,而不是返回可能包含多行的结果集(即使它只是 ID),然后在客户端读取计数.
  3. 考虑使用prepared statements而不是插入查询字符串。

这里是SQLFiddle 演示

关于php - MySQL "LIKE"子句用于过滤字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18181773/

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