【发布时间】:2018-04-04 13:25:36
【问题描述】:
所以我在 CI 框架中有一个表单,在这个表单中,用户可以选择一个日期,也可以选择一个过去的日期。但我不希望用户能够选择过去的日期。因此,例如,如果有人填写表格,他们无法选择 04-04-2018(即今天)之前的日期。这就是我想要的。例如,现在有人可以选择 1980 年的日期
这是我认为的表单代码:
<?php echo form_open('index.php/Jongeren_activiteiten/Add_activiteit'); ?>
<br>
<center>Naam van activiteit:</center>
<div class="form-group">
<input class="form-control" name="activiteit" id="activiteit" type="text">
</div>
<center>Begindatum:</center>
<div class="form-group">
<input class="form-control" name="begindatum" id="begindatum" placeholder="Startdatum cursus" type="date">
</div>
<center>Einddatum:</center>
<div class="form-group">
<input class="form-control" name="einddatum" id="einddatum" placeholder="einddatum cursus" type="date">
</div>
<div>
<button class="btn btn-primary" name="Add_activiteit" >Toevoegen</button>
</div>
</form>
beginddatum 和 einddatum 都是日期。
带有验证规则的表单控制器功能:
public function Add_activiteit()
{
if (isset($_POST['Add_activiteit'])) {
$this->form_validation->set_rules('activiteit', 'Activiteit', 'required|is_unique[activiteit.activiteit]');
$this->form_validation->set_rules('begindatum', 'Begindatum', 'required');
$this->form_validation->set_rules('einddatum', 'Einddatum', 'required');
//If form validation true
if ($this->form_validation->run() == TRUE) {
// echo 'form validated';
$data = array (
'activiteit'=>$_POST['activiteit'],
'begindatum'=>$_POST['begindatum'],
'einddatum'=>$_POST['einddatum'],
);
$this->db->insert('activiteit',$data);
$this->session->set_flashdata("success", "u heeft een nieuwe activiteit toegevoegd");
redirect("index.php/Jongeren_activiteiten", "refresh");
}
}
}
那么,我该如何解决这个问题?可能有表单验证规则?
感谢任何形式的帮助
【问题讨论】:
-
你在使用 js 日期选择器意味着设置 minDate..
-
我没有使用 JavaScript。我不能用 php 或 codeigniter 做到这一点吗?
标签: php forms codeigniter validation codeigniter-3