我有一个checkdate php代码,我需要用某种php / jscript代码替换日期。也许是一些html表单元素,我可以在其中插入日期如何需要,提交它然后文件内的日期被替换。在此示例中,此行中的日期为:
<?PHP
function isValidDate($sd, $ed, $currentDate = null)
{
if ($currentDate === null) {
$currentDate = date('Y-m-d');
}
return ($currentDate >= $sd && $currentDate <= $ed);
}
$startDate = '2016-10-30';
$endDate = '2016-10-31';
if (isValidDate($startDate, $endDate)) {
header("Location: x.php");
} else {
header("Location: y.htm");
}
?>
在这些行中的这个例子中
$startDate = '2016-10-30';
$endDate = '2016-10-31';
日期应该被替换。
应该可以使用某种html5输入/表单元素,有人可以插入日期
<input type="text" value="XXXX-XX-XX" name="start"/>
<input type="submit" value="startdate"/>
and <input type="text" value="XXXX-XX-XX" name="end"/>
<input type="submit" value="enddate"/>
提交日期后,应该通过php / jscript或类似的东西替换。 这甚至可能吗?任何人都可以把我推向正确的方向,可能还有一些教程链接f.e。?
提前致谢。
答案 0 :(得分:1)
我认为你需要使用$ _POST数组。
首先有一个表格:
<form method="POST" action="your_file_name.php">
<input type="text" name="start_date"/>
<input type="text" name="end_date"/>
<input type="submit" value="my_form_dates"/>
</form>
然后将您的程序更改为
<?php
function isValidDate($sd, $ed, $currentDate = null)
{
if ($currentDate === null) {
$currentDate = date('Y-m-d');
}
return ($currentDate >= $sd && $currentDate <= $ed);
}
if (is_set($_POST['start_date']) && is_set($_POST['end_date'])) {
$startDate = $_POST['start_date'];
$endDate = $_POST['end_date'];
}
if (isValidDate($startDate, $endDate)) {
header("Location: x.php");
} else {
header("Location: y.htm");
}
?>
如您所见,您不需要value="XXXX-XX-XX"
属性,因为用户在运行时会输入字段的值。
不要忘记表单中的“your_file_name.php
”与您的计划名称相匹配,无论是.php
还是.html
。
我建议您在this page了解有关此$_POST
数组的更多信息。