首页 > 解决方案 > 从比较来自 DatePicker 的日期的 MSSQL 获取数据,但获取的数据总是错误的

问题描述

我目前正在做一个 PHP 图表系统,它通过将两个日期与 MSSQL 中的日期进行比较,从用户那里获取 From 和 To 日期并在 MSSQL 中搜索数据。

但是,我的 datepicker 给出了要在 MSSQL 中搜索的正确日期,例如我选择了 From date : 6/12/2021 和 To date : 6/15/2021 (dateformat : m/dd/yy) 但是当我提交时获取数据的日期,如果这些日期之间没有数据,它将给我 2020 年 6 月 12 日至 2021 年 6 月 15 日的数据,这是我不想要的。我的图表或查询有问题吗?

我使用 AnyChart 作为我的 php 图表系统。

下面是我从 From 和 To 变量中回显的内容以及我根据日期从 sql 获取的数据

图片

如您所见,获取的日期是 2020 年而不是 2021 年。

这是我用于比较日期和获取数据的代码

<?php 
        if(isset($_POST['Search'])){
            $From=$_POST['From'];
            $To=$_POST['to'];
            $conn = odbc_connect("Ingot_Daily_Report", "", "");
            $query = "SELECT * FROM Output_Data WHERE data_Day BETWEEN '$From' AND '$To'";
            $sql = odbc_exec($conn, $query);
            while($row=odbc_fetch_array($sql)){
            ?>  
            ['<?php echo $row['data_Day']; ?>', <?php echo $row['Crystal_Out']; ?>, <?php echo $row['Aggressive_Daily_Target']; ?>, <?php echo $row['KPI_Target']; ?>, <?php echo $row['AverageToDate']; ?>],
            <?php   
            }
            }
?>

我的 JavaScript

<script>
$(document).ready(function(){
    $.datepicker.setDefaults({
        dateFormat: 'm/dd/yy'
    });
    $(function(){
        $("#From").datepicker({
             
        onClose: function (selectedDate) {
             $("#To").datepicker("option", "minDate", selectedDate);

        }

        });
        $("#To").datepicker({
            
                onClose: function (selectedDate) {
            $("#From").datepicker("option", "maxDate", selectedDate);

                }
        });
    });
              
});
</script>

标签: phpms-accessodbcjquery-ui-datepicker

解决方案


推荐阅读