我有联系表格
<form method="POST" action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" class="contact" autocomplete="on">
<input type="text" name="bot" class="hidden">
<table class="contact">
<tr>
<th><label for="name">Name: </label></th>
<td><input type="text" name="name" placeholder="Yournamehere"
value="<?php echo $_POST['name'];?>" /> </td>
</tr>
<tr>
<th><label for="date">Date: </label></th>
<td><input type="text" name="date" placeholder="mm/dd/yyyy"
value="<?php echo $_POST['date'];?>" /></td>
</tr>
<tr>
<th><label for="message">Comments: </label></th>
<td>
<textarea name="message" rows="10" cols="20"><?php echo $_POST['message'];?></textarea>
</td>
</tr>
<tr>
<td></td>
<td>
<input type="submit" value="Submit" name="submit">
<input type="reset" value="Reset"/>
</td>
</tr>
共有6个字段,但我没有在代码中包含所有字段,因为它们无关紧要。基本上我试图用PHP中的checkdate函数验证日期字段,但我不能在我的生活中弄清楚如果$ _POST ['date']是有效日期,如何检查if语句。我不知道我是否可以这样做,因为我有日期的文本字段?这就是我到目前为止所拥有的PHP ...它不是很好lol
<?php
$fields = array($_POST['name'], $_POST['email'], $_POST['phone'],
$_POST['occasion'], $_POST['date'], $_POST['location'], $_POST['message']);
if (checkdate($month, $day, $year) == false) {
$error[4] = "Please enter a valid date";
}
?>
我不知道如何将put fields [4]放在某处以检查用户键入的内容。我看过this示例,它有所帮助,但似乎有所不同,因为我只有一个字段而不是三个......请帮助!
答案 0 :(得分:0)
如果您确定您的用户要以正确的格式(mm / dd / yyyy)提交日期,您可以执行以下操作:
<?php
$date = explode("/", $_POST["date"]);
if (checkdate((int)$date[0], (int)$date[1], (int)$date[2]) == false) {
$error[4] = "Please enter a valid date";
}
?>
尽管如此,您应该检查输入格式是否正确,查看正则表达式。