如何将当前日期设置为输入的默认值?

时间:2019-01-15 10:00:11

标签: php date

我正在使用输入日期为date(datepicker)的HTML表单进行操作,我想做的是以下操作:“如果用户设置了任何日期,则默认值将是该新日期,如果没有发生的话显示今年的第一天”。我该如何实现?这是我尝试过的。

 <input id="desde" name="desde" type="date" value="<?php  
 if(isset($_REQUEST['desde'])) { echo $_REQUEST['desde']; } else
if(!isset($_REQUEST['desde'])){ echo '01/'.'01/'.date('Y');}?>">

我尝试执行上面显示的以下代码,但是如果我不输入任何日期却不显示任何内容,那我做错了什么?

4 个答案:

答案 0 :(得分:0)

首先获取年份,然后在代码中使用它。我已经更新了您的代码,如下所示。可能会对您有帮助。

 <input id="desde" name="desde" type="date" value="<?php  
 $year = date("Y"); 
 if(isset($_REQUEST['desde'])) { echo $_REQUEST['desde']; } else
if(!isset($_REQUEST['desde'])){ echo '01/'.'01/'.$year;}?>">

答案 1 :(得分:0)

尝试一下

  

注意:使用yyyy-mm-dd格式

PHP代码

 <?php
    if(isset($_REQUEST['desde']) && $_REQUEST['desde']!='') {
        $Date=$_REQUEST['desde'];
    }else{
        $Date=date('Y')."-01-01";
    }   
    ?>

HTML:

<input id="desde" name="desde" type="date" value="<?php echo $Date;?>">

<input id="desde" name="desde" type="date"
               value="<?php if(isset($_REQUEST['desde']) && $_REQUEST['desde']!='') {
                    echo $_REQUEST['desde'];
                }else{
                    echo date('Y')."-01-01";
                }?>">

答案 2 :(得分:0)

您提供的日期格式错误-https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/date#Value

  

要注意的一件事是,显示的日期格式与实际的value不同-显示的日期格式将根据用户浏览器的设置区域设置来选择,而日期value始终是格式为yyyy-mm-dd


(而且if(foo) { … } else if(!foo) { … }是不必要的冗余,您不需要第二个if来检查与第一个相反的位置-仅else就已经在这里提供了相同的功能。 )

答案 3 :(得分:0)

HTML日期输入类型元素始终以YEAR-MONTH-DAY格式返回日期。如果要设置任何默认日期,则需要以该特定格式提供日期。尝试这种方式,

if(!isset($_REQUEST['desde'])){ echo date('Y').'-01-01';}?>">