搜索查询问题

时间:2014-03-17 18:06:10

标签: php mysql

有点帮助吗?

当我输入列表并滑动查询时。 但是,如果我只输入列表,它不会显示查询以查找带有category = list的数据,如果我输入slist,它只会显示查询以查找子类别= slist的数据。

例如,如果我在列表上输入Toys,而在slist上输入boy,查询将执行并显示产品类别= Toys和subcategory = boys 但如果我只在列表中输入玩具并且我没有在slist上输入任何东西它不会显示只显示玩具的产品的查询同样的事情发生如果我只输入slist

它只有在我输入它们时才有效..我需要创建一个搜索栏,可以搜索,仅列表和仅限滑动。 抱歉我的英语不好。

<?php
$category = $user_data['categoryquery'];

        $per_page = 15;

        // figure out the total pages in the database
        if (isset($_POST['submit']))
        {
            if($_POST['list'] != '' && $_POST['slist'] != '')
            $list = $_POST['list'];
            $slist = $_POST['slist'];
            $result = mysql_query("SELECT * FROM products WHERE category = '$list' AND subcategory = '$slist' ORDER BY date_added");

            }else{
            if($_POST['list'] == '' && $_POST['slist'] != '')
            {
                $slist = $_POST['slist'];
                $result = mysql_query("SELECT * FROM products WHERE subcategory = '$slist' ORDER BY date_added");
            }else{
            if($_POST['list'] != '' && $_POST['slist'] == '')
            {
                $list = $_POST['list'];
                $result = mysql_query("SELECT * FROM products WHERE category = '$list' ORDER BY date_added");
            }else{
        $result = mysql_query("SELECT * FROM products");
            }
            }
            }

2 个答案:

答案 0 :(得分:2)

您错过了{ if($_POST['list'] != '' && $_POST['slist'] != '') ****HERE****

纠正这个并修复你的缩进,它会有很多帮助

答案 1 :(得分:0)

现在无法运行php来测试它,但是当你只输入一个POST变量时,另一个可能会变成空值而不是空字符串。

如果是这种情况,请参阅简单修复here