按日期过滤数据库表

我的目标是为从 1 周前、1 个月前加载帖子以及从日期和日期到的两个输入(如果其中一个为空以填充当前日期(ymd h:m:s)格式)进行过滤


这就是我尝试过的所有方法,并且可以使其正常工作,非常感谢每个答案,谢谢


Tl:dr 为一周前、一个月前选择过滤器从日期到日期(如果其中之一为空,则使用当前日期)


索引.php


<?php  

 $connect = mysqli_connect("localhost", "root", "", "testing");  

 $query = "SELECT * FROM tbl_order ORDER BY order_id desc";  

 $result = mysqli_query($connect, $query);  

 ?>  

 <!DOCTYPE html>  

 <html>  

      <head>  

           <title>Webslesson Tutorial | Ajax PHP MySQL Date Range Search using jQuery DatePicker</title>  

           <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>  

           <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />  

           <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>  

           <link rel="stylesheet" href="http://code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">  

      </head>  

      <body>  

           <br /><br />  

           <div class="container" style="width:900px;">  

                <h2 align="center">Ajax PHP MySQL Date Range Search using jQuery DatePicker</h2>  

                <h3 align="center">Order Data</h3><br />  

                <div class="col-md-3">  

                     <input type="text" name="from_date" id="from_date" class="form-control" placeholder="From Date" />  

                </div>  

                <div class="col-md-3">  

                     <input type="text" name="to_date" id="to_date" class="form-control" placeholder="To Date" />  

                </div>  

                <div class="col-md-5">  

                     <input type="button" name="filter" id="filter" value="Filter" class="btn btn-info" />  

                </div>  

                <div style="clear:both"></div>                 

                <br />  

   

繁星淼淼
浏览 142回答 2
2回答

慕尼黑8549860

您可以尝试使用 CAST 函数转换 $_POST 以将值转换为日期。$query = "SELECT * FROM tbl_orderWHERE order_date&nbsp;&nbsp; &nbsp; BETWEEN CAST('".$_POST["from_date"]."' AS DATE)&nbsp;&nbsp; &nbsp; AND CAST('".$_POST["to_date"]."' AS DATE)";你可以在MySQLTutorial上阅读它。此外,我建议您在使用数据库时转义变量 :-) 始终期望用户做得不好。
打开App,查看更多内容
随时随地看视频慕课网APP