Php 筛选器面板的SQL查询工作不正常

Php 筛选器面板的SQL查询工作不正常,php,mysql,Php,Mysql,嘿,我用PHP做了一个大学实习门户项目,但现在陷入了困境,页面上显示了筛选表中所有相关和不相关的细节 筛选器表询问以下有关的详细信息: 1.类别-提供实习的类别 2.地点-他希望实习的地点 3.开始日期 4.是否在家工作 5.第五个是特定的关键字搜索,查找与关键字相关的所有相关数据 PHP代码是 <?php if (isset($_POST['search'])) { $category = trim($_POST[

嘿,我用PHP做了一个大学实习门户项目,但现在陷入了困境,页面上显示了筛选表中所有相关和不相关的细节

筛选器表询问以下有关的详细信息: 1.类别-提供实习的类别 2.地点-他希望实习的地点 3.开始日期 4.是否在家工作 5.第五个是特定的关键字搜索,查找与关键字相关的所有相关数据

PHP代码是

<?php       

        if (isset($_POST['search'])) 
        {
            $category = trim($_POST['cat']);
            $location = trim($_POST['loc']);
            $start = $_POST['start-date'];
            $starting = strtotime($start);
            $duration = $_POST['duration'];
            $work = '';
            $key = $_POST['key-srch'];

                if (isset($_POST['work-home'])) 
                {
                    $work = $_POST['work-home'];
                }

                elseif (!empty($duration)) 
                {
                    if (!is_numeric($duration))
                    {
                        $err_msg = "Please enter a number upto 6 !";
                        $code = '1';
                    }
                }
                else
                {
                    $sql = " SELECT * 
                              FROM is_internship
                              WHERE 
                              (`profile/category` LIKE '$category' OR `location` LIKE '$location' OR `start_date` >= '$starting') 
                              OR (`duration` LIKE '$duration' OR `job-type` LIKE '$work') 
                              OR (`profile/category` LIKE '%{$key}%' OR `job-type` LIKE '%{$key}%' 
                              OR `part-time` LIKE '%{$key}%' 
                              OR `location` LIKE '%{$key}%' )";

                    $query = mysqli_query($con,$sql);

                        if ($query == TRUE && mysqli_num_rows($query) > 0)
                        {
                            echo mysqli_num_rows($query);
                            $data = mysqli_fetch_array($query,MYSQLI_BOTH);


                        }

                }
        }


?>

您的代码易受SQL注入攻击,您需要修复此问题。耶,我也在处理此问题!!您应该动态地构建查询并将其参数化。所有字段都是必填字段吗?是的,所有字段都是必填字段!我不知道如何进行动态查询