Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何比较PHP中的月份?_Php_Mysql - Fatal编程技术网

如何比较PHP中的月份?

如何比较PHP中的月份?,php,mysql,Php,Mysql,我想对我的MySQL数据库执行SELECT查询,使用下拉菜单选择给定月份的记录。日期以YYYY-MM-DD格式存储在相关表格中。显然,我可以将下拉列表的值发布到查询中,但是当日期列也包含日期和年份时,如何对其进行编码以比较日期?我本来打算在注释中这样做,但这更简单 为什么它会停止工作?如果要为查询提供来自的值,请构建选项,以便始终提供所需的选项,如下所示: <select> <?php // Allow user to go back 100 months at

我想对我的MySQL数据库执行
SELECT
查询,使用下拉菜单选择给定月份的记录。日期以YYYY-MM-DD格式存储在相关表格中。显然,我可以将下拉列表的值发布到查询中,但是当日期列也包含日期和年份时,如何对其进行编码以比较日期?

我本来打算在注释中这样做,但这更简单

为什么它会停止工作?如果要为查询提供来自
的值,请构建选项,以便始终提供所需的选项,如下所示:

<select>
    <?php
    // Allow user to go back 100 months at most
    $months_back = 100;

    // Loop the number of months allowed
    for($i = 0; $i < $months_back; $i++)
    {
        // build an <option> tag and give it a Y-m format subtracting an additional month per iteration of the for() loop
        $option_value = date('Y-m', strtotime('-'.$i.' months'));

        // echo your option
        echo '<option value="'.$option_value.'">'.$option_value.'</option>';
    }

    ?>
</select>


查看并单击运行按钮

其中月份(日期列)=month($date\u var)
列的类型是什么?它在问题中说,YYYY-MM-DD。不,这是实际格式,它没有告诉我们数据类型。它可能是
varchar
text
或任何真正的东西…好吧,使用mysqli_fetch_数组提取它会将它转换为字符串-你在考虑串联吗?我得到一个未定义的变量$option_值错误。嗯,我是个白痴,我没有公布价值。这很有效,谢谢!哈哈,很高兴我能帮上忙