使用AJAX,PHP和MySQL在日期之间进行过滤

时间:2015-07-06 01:11:46

标签: php jquery mysql ajax

我尝试实施日期过滤器时出现问题:

我的数据库是这样的:

start_date  |  end_date
2000        |  2005

我的PHP选择如下:

if (empty($processo) && empty($ano)){
                        $pegaSonda = $pdo->prepare("SELECT * FROM sonda WHERE `modelo` = ?");
                        $pegaSonda->execute();
                    } else if(!empty($processo) && empty($ano)) {
                        $pegaSonda = $pdo->prepare("SELECT * FROM sonda WHERE n_processo = '$processo'");
                        $pegaSonda->execute();
                    } else if(!empty($processo) && !empty($ano)){
                        //AQUI EU POSSO COLOCAR O FILTRO POR ANO
                        $pegaSonda = $pdo->prepare("SELECT * FROM sonda WHERE n_processo = '$processo'");
                        $pegaSonda->execute();
                    }

变量$ ano(这是用户在输入文本中写入的年份,ajax将作为Post请求发送给PHP)。

当用户输入年份时如何使用SELECT

我尝试的代码如下所示:

"SELECT * FROM sonda WHERE n_processo = '$processo' AND start_date >= '$ano' OR end_date <= '$ano'"

请帮忙吗? 谢谢!

1 个答案:

答案 0 :(得分:1)

我们在讨论后得到的答案

'$ano' BETWEEN start_date AND IF(end_date = '', YEAR(CURDATE()), end_date)