如何从 DataBAse 中过滤数据并在网站中显示 -> 使用 IN 子句(多选)

问题描述 投票:0回答:0

使用下面的代码,结果当我标记更多 fstatus(状态值 0、7、8、9)时我收到问题 - 然后在网站上我没有得到任何结果

    <?php
                        $sql = "SELECT TOP 2000
    [idf]
                            ,[depart]
                            ,[cons]
                            ,[fstatus]

     FROM [FLO].[dbo].[floo]";

    if(isset($_GET['fstatus']) && ($_GET['fstatus'])  !=NULL){
    $_GET['fstatus'] = array();
    foreach($_GET['fstatus'] as $data)
    {

        $fstatus.= $data . ',';

    }
    ECHO $fstatus;
    $where .= " AND [fstatus] in ('" . $fstatus . "')";

    }
 ?>

在网站上显示查询后(选择了 2 个 fstatuses),上面的条件看起来是“...AND [fstatus] in ('0,7')” - 我认为这个包含 2 个值的引号是问题所在

如何为 fstatus 准备 where 条件,无论您选择一个、两个或更多值(fstatuses),这个条件应该像这样工作——所有选择的 fstatuses 的结果都应该显示在我的网站上。 提前谢谢你

php sql-server display multi-select in-clause
© www.soinside.com 2019 - 2024. All rights reserved.