я хочу проверить 2 ввода даты в codeigniter, с условиями, если дата окончания больше даты начала, появится предупреждение [предупреждение javascript или что-то] или данные не могут быть введены
моя форма вроде этого,
<h1><?php echo $title; ?></h1> <form action="<?= base_url(); ?>index.php/admin/kalender/buat" method="post" enctype="multipart/form-data" name="form" id="form"> <?php echo "<p><label for='IDKategori'>Tingkatan Pimpinan :</label><br/>"; echo form_dropdown('IDKategori', $kategori) . "</p>"; echo "<label for='ptitle'>Kegiatan / Lokasi :</label><br/>"; $data = array('class' => 'validate[required] text-input', 'name' => 'judul', 'id' => 'ptitle', 'size' => 80); echo form_input($data); echo "<p><label for='long'>Uraian Kegiatan / Keterangan / Catatan :</label><br/>"; $data = array('class' => 'validate[required] text-input', 'name' => 'konten', 'rows' => '13', 'cols' => '60', 'style' => 'width: 60%'); echo form_textarea($data) . "</p>"; echo "<p><label for='ptitle'>Waktu Mulai :</label><br/>"; $data = array('class' => 'validate[required] text-input', 'name' => 'TanggalMulai', 'id' => 'basic_example_1'); echo form_input($data) . "</p>"; echo "<p><label for='ptitle'>Waktu Akhir :</label><br/>"; $data = array('class' => 'validate[required] text-input', 'name' => 'TanggalAkhir', 'id' => 'basic_example_2'); echo form_input($data) . "</p>"; echo form_submit('submit', 'Tambah Even'); ?> <input type="button" value="Kembali" onClick="javascript: history.go(-1)" />
как утвердить в форме «Вакту Ахир и Вакту Мулай»?
Попробуй это. Это с помощью библиотеки проверки подлинности CI. Он использует тип проверки обратного вызова.
Поместите это в if(isset($_POST['submit_button_name'])) {}
раздел. Во-первых, массив проверки нагрузки,
$validation = array( array('field' => 'startDate', 'label' => 'StartDate', 'rules' => 'required|callback_compareDate'), array('field' => 'endDate', 'label' => 'endDate', 'rules' => 'required|callback_compareDate'), );
Затем загрузите библиотеку проверки CI как,
$this->form_validation->set_rules($validation); $this->form_validation->set_message('required', '%s is required.');
Это функция обратного вызова.
function compareDate() { $startDate = strtotime($_POST['startDate']); $endDate = strtotime($_POST['endDate']); if ($endDate >= $startDate) return True; else { $this->form_validation->set_message('compareDate', '%s should be greater than Contract Start Date.'); return False; } }
«Требуемая» проверка делает поля обязательными для заполнения чем-то. Функция обратного вызова в этом случае сравнивает даты и обрабатывает форму, если дата начала меньше, чем в случае с ошибкой даты ИЛИ ИЛИ.
Между тем, если вы хотите в JQuery, вы можете использовать это.
var startDate = new Date($('#startDate').val()); var endDate = new Date($('#endDate').val()); if (startDate > endDate){ alert("Start Date should be less than End Date"); return false; }