Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 喜欢计数1,但不要在db中计数_Mysql - Fatal编程技术网

Mysql 喜欢计数1,但不要在db中计数

Mysql 喜欢计数1,但不要在db中计数,mysql,Mysql,我被告知试着写一篇新文章,更好地解释 我的网页上有一个上传功能。我想从名为filter的数据库中屏蔽某些标题。但是它不起作用 php端看起来像这样 $DB->query("SELECT COUNT(*) FROM filter WHERE '". $Properties['Title'] ."' LIKE CONCAT('%', filter, '%')"); if($DB->record_count() != 0) { $Err = '<b>you cant u

我被告知试着写一篇新文章,更好地解释

我的网页上有一个上传功能。我想从名为filter的数据库中屏蔽某些标题。但是它不起作用

php端看起来像这样

$DB->query("SELECT COUNT(*) FROM filter WHERE '". $Properties['Title'] ."' LIKE CONCAT('%', filter, '%')");
if($DB->record_count() != 0) {
    $Err = '<b>you cant upload this!</b>';
    include(SERVER_ROOT . '/sections/upload/upload.php');
    die();

所有这些都导致了500个内部服务器错误

,正如我从一个查询中看到的那样,您希望查找输入了类似用户(或其他人)标题的现有记录。
SELECT id FROM filter WHERE 'filter' LIKE CONCAT('%', '" . $Properties['Title'] . "', '%')

if($DB->record_count() != 0) {
    $Err = '<b>You cant upload!</b>';
    include(SERVER_ROOT . '/sections/upload/upload.php');
    die();
}
}


SELECT COUNT(*) as 'count' FROM filter WHERE 'filter' LIKE CONCAT('%', '" . $Properties['Title'] . "', '%')

if($DB->record_count() != 0) {
    $Err = '<b>You cant upload!</b>';
    include(SERVER_ROOT . '/sections/upload/upload.php');
    die();
}
}

SELECT COUNT(*) as count FROM filter WHERE 'filter' LIKE CONCAT('%', '" . $Properties['Title'] . "', '%')

if($DB->record_count() != 0) {
    $Err = '<b>You cant upload!</b>';
    include(SERVER_ROOT . '/sections/upload/upload.php');
    die();
}
}
这里有两个错误:


  • 错误的
    WHERE
    子句。
    之后是表字段的名称,而不是值
  • 过滤器
    在CONCAT中是什么?它的价值是什么
  • 假设表中的标题列名
    filter
    column\u title
    。 您正在表格
    过滤器
    中查找已经存在的标题.White.Tiger.Test.Dawe.avi。
    查询应如下所示:

    选择COUNT(*)作为过滤器中的COUNT,其中“column_title”如CONCAT(“%”、“.White.Tiger.Test.Dawe.avi”、“%”)等。

    查询后,您必须检查
    count
    的值,并将其与1进行比较。如果等于或大于1-您已经拥有此标题。Else-标题不在表中,您可以执行添加或其他操作

    更新

    正如我看到的实际表结构一样,您应该将
    列标题
    替换为
    过滤器


    <代码> >从“筛选器”中选择计数(*)作为计数,如“CONTACT”('%%),'.Wal.Tig.Test.DuW.Avi','%')

    > <代码> > < /C> >表字段的名称,而不是值。考虑与我们共享您的表结构。Oouupp I键入错误…它会阻止.White.Tiger.Test.Dawe.avi的上传,但它也会阻止.White.Dog.Test.soen.avi,但如果我从过滤器中运行SELECT COUNT(*),其中为“.”。White.Dog.Test.soen.avi。“”像CONCAT(“%”,filter“%”),我在pma查询表结构id int(11)Nej None AUTO_INCREMENT 2 filter varchar(255)中得到0的计数latin1_swedish_Ciu如果我理解正确,php中的查询应该是这样的选择COUNT(*)as COUNT FROM filter,其中'filter'像CONCAT('%','$Properties['Title'],'%'),如果($DB->record_COUNT()!=0){$Err='youcan upload this!';include(SERVER_ROOT./sections/upload/upload.php');die();您是对的。但如果您选择的是
    COUNT(*)
    mysql查询结果将始终有一行。
    count
    的值将存储在这一行中。因此,我假设
    record\u count
    对于任何查询都将始终返回1。因此,您必须使用另一种方法精确获取
    count
    的值。您如何进行db查询,以便它仅在出现以下情况时拒绝上载d筛选器列中的匹配项?正如我已经说过的,使用我的原始查询
    选择COUNT(*)作为筛选器中的COUNT,其中的'filter'如CONCAT('%','The.White.Tiger.Test.Dawe.avi','%')
    -但这里必须获得
    COUNT的值。或者类似这样:
    从筛选器中选择id,其中的'filter'如CONCAT'(“%”、“.White.Tiger.Test.Dawe.avi”、“%”)
    -在这里您将获得精确的数据行。
    record\u count
    将返回行数。也有一些错误。我在mysql上得到了服务器错误,选择count(*)作为来自过滤器的计数,其中“filter”如CONCAT(“%”、“$Properties['Title]”、“%”)我是不是忘了什么东西&可能的事[‘标题’]?