<input id="datepicker" name="datepicker" class="calendar" />
这是我的剧本:
<script>
$(function() {
$( "#datepicker" ).datepicker({ minDate: 0});
});
</script>
这里是php
if( $date < strtotime( date('m/d/Y', $time )) ) {
echo "<script>alert('You can't put past day..'); </script>"; }
我想阻止用户错误地输入过去的日期或知道..但它不起作用..我不能阻止..我可以阻止用户输入过去的日期吗?我希望只有用户可以在下一天进入今天..所以我想在php中输入过滤。
答案 0 :(得分:2)
strtotime()
没有格式字符串,您要使用的函数是DateTime::createFromFormat
。它会返回DateTime
个对象,而不是时间戳,因此您需要将其与DateTime
进行比较:
$date = $_POST['datepicker'];
if (DateTime::createFromFormat('m/d/Y', $date) < new DateTime()) {
echo "<script>alert('You can't put past day..'); </script>";
} else {
// code to insert into database
}
答案 1 :(得分:-1)
我修复了n也许它可以帮助任何需要我的人..
<input id="datepicker" name="datepicker" class="calendar" /><br />
<script>
$(function() {
$( "#datepicker" ).datepicker({ minDate: 0});
});
</script>
$year=$_POST['year'];
$date=$_POST['datepicker'];
$timer=$_POST['timer'];
$time=time();
$start_data = date('m/d/Y', time() - (86400));
$now=date('m/d/Y', $time);
if( $date < $start_data ){
echo "<script>alert('Failed..'); </script>";
}
再次感谢你的帮助..