我有一个表格,通过3个下拉框提交日期。 我目前有表格提交给自己,然后检查以确保日期有效。
if(isset($_POST['submit']))
{
$day = $_POST['day'];
$year= $_POST['year'];
$month=$_POST['month'];
$date= $year.'-'.$month.'-'.$day;
//**********************************Validate Date
if (!checkdate($month,$day,$year)){
echo $error= "Invalid Date Please Renter";
}
}
我很好奇如果日期有效,我应该如何使用变量进入下一页。
我在想header('Location: nextpage.php');
并使用Session()
?它工作,但我想知道这是否是正确的方式。
答案 0 :(得分:0)
您也可以像这样调用标题函数:
header('Location: nextpage.php?year='.$year.'&month='.$month.'&day='.$day);
这样您就不必担心会话,数据将通过$ _GET参数传递。
答案 1 :(得分:0)
为什么不在另一个页面中验证输入,如果输入无效,则将用户重定向回表单。如果输入有效,则他们已经在另一个'页。您可以在不设置会话的情况下使用$ _POST [' day']等。我相信这种方式比将其存储在会话中更安全。
答案 2 :(得分:0)
由于这是关于最佳/常见做法的更多信息,因此可以选择在以下情况下使用何种方法: