私はcodeigniterにデータを記入して提出する必要があるフォームを作成していますが、フォームの送信後にエラーが発生した場合、しかし、この段階では、入力した値がそのままフォームに残る必要があります。コードシニターにフォームの送信が失敗した後に値を保持できない
flashdataエラーが表示されますが、値がフォームに保持されません。私はset_valueを使用しようとしましたが、代わりに空白のフォームを取得しました。いずれかが誤りを指摘してくださいすることができ
ビュー
<?php echo form_open_multipart('student/data/'.$student->id); ?>
<p><?php echo $this->session->flashdata('req_msg'); ?></p>
<?php
$data = array(
'type' => 'text',
'name' => 'name',
'placeholder' => 'Full Name',
'class' => 'form-control',
'id' => 'form-first-name',
'value' => set_value('name')
);
?>
<?php echo form_input($data); ?>
<?php
$data = array(
'type'=>'tel',
'pattern'=>'^\d{10}$',
'name' => 'contactno',
'placeholder' => 'Enter 10 digit Contact No',
'class' => ' form-control',
'required' => 'required',
'id' => 'form-first-name',
'value' => set_value('contactno')
);
?>
<?php echo form_input($data); ?>
<div class="form-group">
<?php
$data = array(
'type' => 'submit',
'class' => 'btn btn-primary',
'name' => 'submit',
'content' => 'Upload',
'id' => 'btn-submit'
);
echo form_button($data);
?>
</div>
<?php echo form_close(); ?>
コントローラ
$this->form_validation->set_rules('contactno', 'Contact Number', 'trim|is_unique[student.contactno]');
if ($this->form_validation->run() == FALSE)
{
$this->session->set_flashdata('req_msg', 'Contact number already exists');
redirect('student/data/'.$studentid);
}
リダイレクトすると、すべてのデータがリセット/リセットされます。あなたはこの –
の代わりにAJAXを使用する必要があります@Abdulla Nilamどのように私はajaxを使用することができます教えてください – sammy
http://michaelsoriano.com/how-to-ajax-validate-forms/ –