我有这样的代码:
<form name="download" id="download" method="post" enctype="multipart/form-data">
<div>
<label for="beginning_date"><span class="required">*</span> Beginning Date: </label>
<input type="text" size="30" id="beginning_date" name="beginning_date" value="<?php echo date("d.m.Y"); ?>" required="required" />
</div>
<input type="submit" value="Next" name="next"/>
</form>
和php . .
if(array_key_exists('next', $_POST))
{
if (preg_match('/^'d{1,2}'.'d{1,2}'.'d{4}$/', $date))
{
//the code continues...
}
else
{
echo "Wrong formation <br />";
}
}
这是一个很长的表单,我希望如果有人输入像这样的日期"02.03.20322",并且出现错误,他们不必重新开始填写表单…表单已经出现了"填充字段"…
我已经试过了:
<input type="text" size="30" id="beginning_date" name="beginning_date" value="<?php if (isset($date)) { echo $date; } else { echo date("d.m.Y"); } ?>" required="required" />
但是…
看看你的代码,根本没有$date,所以你应该检查的是$_POST['beginning_date']的存在,而不是像这样的$date:
<input type="text" size="30" id="beginning_date" name="beginning_date" value="<?php if (isset($_POST['beginning_date'])) { echo $_POST['beginning_date']; } else { echo date("d.m.Y"); } ?>" required="required" />
当使用post方法时,用户提交的值将进入$_POST
数组。表单元素的名称用作键。
$_POST['beginning_date']
保存在$_SESSION
,
在页面顶部或action.php中的任何位置:
if (isset($_POST)){
$_SESSION['date'] = $_POST['beginning_date'];
}
然后:
<input type="text" size="30" id="beginning_date" name="beginning_date" value="<?php echo (isset($_SESSION['date'])) ? $_SESSION['date'] : date("d.m.Y");?>" required="required" />
如果将来需要更改操作页面,使用session是很有用的。但是,如果您想使用post来代替(对于同一页面发布),只需回显它:
<input type="text" size="30" id="beginning_date" name="beginning_date" value="<?php echo (isset($_POST['beginning_date'])) ? $_POST['beginning_date'] : date("d.m.Y"); ?>" required="required" />
php…
session_start();
if(array_key_exists('next', $_POST))
{
if (preg_match('/^'d{1,2}'.'d{1,2}'.'d{4}$/', $date))
{
//the code continues...
}
else{
echo "Wrong formation <br />";
$_SESSION['date']=$_POST['beginning_date'];
}
}
html . .
<input type="text" size="30" id="beginning_date" name="beginning_date" value="<?php if
(isset($_SESSION['date'])) { echo $_SESSION['date'] } else { echo date("d.m.Y"); } ?>"
required="required" />