【发布时间】:2019-01-23 18:19:04
【问题描述】:
我有一个表单,我在提交时使用 form_validation 检查错误,显示错误和输入的 set_value,但如果使用 ctrl+r 重新加载页面,错误和 set_value 仍然显示。
任何人都知道如何将表单重新加载为空
控制器:
public function ajoutAffairePI(){
$this->form_validation->set_rules('nomPrenomAD','Nom Prenom','required|min_length[5]',array(
'required' => "Le champ %s est obligatoire.",
'min_length' => "Le champ %s doit comporter au moins 5 caractères."
));
$this->form_validation->set_rules('matriculePA','Matricule','required|min_length[8]|max_length[8]|numeric',array(
'required' => "Le champ %s est obligatoire.",
'min_length' => "Le champ %s doit comporter au moins 8 caractères.",
'max_length' => "Le champ %s ne peut pas dépasser 8 caractères.",
'numeric'=> "Le champ %s ne doit contenir que des chiffres."
));
$this->form_validation->set_rules('nomPrenomPA','Nom Prenom','required|min_length[5]');
$this->form_validation->set_rules('numeroAffaire',"Numéro d'affaire",'required|numeric|min_length[5]|callback_numeroAffaire_check["AFFAIRE_PREMIERE_INSTANCE"]');
if($this->form_validation->run() === FALSE){
$this->load->view('templates/header');
$this->load->view('templates/ajouter');
$this->load->view('templates/footer');
}
else{
$this->affaires_model->set_affaire_pi();
redirect('affaire/home');
}
}
查看:
<div class="container">
<h2>Ajouter une affaire</h2>
<?php echo form_open('',array('class'=>'container-fluid')); ?>
<fieldset>
<legend>Dossier</legend>
<div class="form-inline">
<label class="mb-2 mr-sm-2">Nom de Dossier</label>
<input type="text" class="form-control mb-2 mr-sm-2" value="<?php echo set_value('nomDeDossier'); ?>" placeholder="Nom de Dossier" name="nomDeDossier" required>
<label class="mb-2 mr-sm-2">Numéro de Dossier</label>
<input type="Number" class="form-control mb-2 mr-sm-2" value="<?php echo set_value('numeroDeDossier'); ?>" placeholder="Numéro de Dossier" name="numeroDeDossier" required>
</div>
</fieldset>
<fieldset>
<legend>T.P.I</legend>
<div class="form-inline">
<label class="mb-2 mr-sm-2">N° AFF</label>
<input type="text" class="form-control mb-2 mr-sm-2" value="<?php echo set_value('numeroAffaire'); ?>" placeholder="Numéro d'affaire" name="numeroAffaire">
<?php echo form_error('numeroAffaire');?>
<label class="mb-2 mr-sm-2">Date Jugement</label>
<input type="date" class="form-control mb-2 mr-sm-2" value="<?php echo set_value('dateJugement'); ?>" placeholder="Date Jugement" name="dateJugement" required>
</div>
<button type="submit" class="btn btn-primary">Ajouter</button>
【问题讨论】:
-
如果您重新加载页面,表单值会再次发送到服务器。因此再次显示验证错误。
-
嗯,是的,但我没有点击提交按钮
-
是的,你不需要。重新加载只是重做您的最后一个 HTTP 请求(可能是 POST)。 @Med Dah
-
一定有一种方式不符合逻辑:/
-
您可以直接再次访问该网址,而不是按
ctrl+r。 @Med Dah
标签: php codeigniter validation