PHP在用户提交的日期字段中输出数字

时间:2015-01-22 19:56:37

标签: php html date

我对编码很新,我无法弄清楚我做错了什么!

我正在创建一个代码,我想让php显示用户在我的html日期输入框中放置的内容:

<input type="date" name="dati[]" value="Diagnosis Date" /> 

<input type="date" name="datii[]" value="Diagnosis Date" />

这是我的PHP代码:

if(isset($_POST['dati'])) {
    foreach ($_POST['dati'] as $dati);
    foreach ($_POST['datii'] as $datii);
       echo "Diagnosis from: " . $dati . " to " . $datii;   
}

输出是我想要的:“诊断时间:2015年1月1日至2015年1月1日”或类似的东西,但是当用户没有输入日期(因为他们没有必须)

在我的输出中,我总是有“诊断来自:”

我如何摆脱这个?

谢谢!

1 个答案:

答案 0 :(得分:3)

我建议:

<input type="date" name="dati" value="Diagnosis Date" /> 
<input type="date" name="datii" value="Diagnosis Date" />


if(!empty($_POST['dati']) && !empty($_POST['datii'])) {
       echo "Diagnosis from: " . filter_var($_POST['dati'], FILTER_SANITIZE_STRING); . "
 to " . filter_var($_POST['datii'], FILTER_SANITIZE_STRING);   
}

**添加过滤器非常安全,感谢@james R

没有必要将字段dati,datii放入多维数组(通过向名称添加[]),因此不需要foreach循环(即使它们是多维的也不需要)< / p>