我有这个代码在提交表单后更改$ date变量。
<?php
$date=date("m/d/Y");
?>
<form action="" method="post">
<input type='text' value=<?php echo $date ?> name='day1'/>
<button type='submit' name='btnFilter'>Filter</button>
</form>
<?php
if(isset($_POST['btnFilter'])){
$date=$_POST['day1'];
}
echo $date;
?>
我想要发生的是今天#day1的默认值。当用户更改并提交时,页面必须回显新日期,并且#day1中的值必须是新用户输入。但是在我的代码中,当用户提交表单时,#day1的值变为今天(默认值)。我需要改变什么?
答案 0 :(得分:1)
尝试使用:
<?php
$date = date("m/d/Y");
if(isset($_POST['btnFilter'])){
$date = $_POST['day1'];
}
?>
<form action="" method="post">
<input type="text" value="<?php echo $date ?>" id="day1" name="day1"/>
<input type="submit" id='btnFilter' name="btnFilter">Filter</button>
</form>
您正在使用不带$_POST
值的ID ..为输入标签指定名称。
答案 1 :(得分:0)
为您的文字字段命名。那就行了。
<form action="" method="post">
<input type="text" name="day1" value="<?php echo $date ?>" id="day1"/>
<button type="submit" name="btnFilter" id='btnFilter'>Filter</button>
</form>
注意:您在
$_POST['']
中访问的内容应该是表单元素的name
属性而不是id
属性。
答案 2 :(得分:0)
我不知道你为什么要检查btnFilter的设置。尝试检查day1元素:
<?php
$date = date("m/d/Y");
?>
<form action="" method="post">
<input type='text' value=<?php echo $date ?> name='day1'/>
<button type='submit' name='btnFilter'>Filter</button>
</form>
<?php
if(isset($_POST['day1'])){
$date = $_POST['day1'];
}
echo $date;
?>