1
私はコード署名者の検証から多数の妥当性検査を持ついくつかのフィールドを持っています。しかし、今、本当にここでメッセージCodeigniterですべてのフラッシュメッセージを取得する方法は?
を検証され、その示す1つの検証エラーフラッシュは私のコントローラのブロックコードが
public function customer_upd()
{
extract($_POST);
$err = '';
$date1 = $_POST['cust_upd_bd'];
$date2 = $_POST['cust_upd_dom'];
if($date2 != "") {
$datediff = (strtotime($date2) - strtotime($date1));
$res = floor($datediff/(60 * 60 * 24));
if ($res == " ") {
$err .= "Please Enter a Date";
} elseif ($res < 365) {
$err .= "Child marriage is prohibited";
}
if ($err != '') {
$_SESSION['dateerror'] = $err;
redirect('customer/edit/'.$_POST['ctmr_upd_id']);
}
}
$original_value1 = $this->db->query("SELECT customer_email FROM customer WHERE id = ".$_POST['ctmr_upd_id'])->row()->customer_email ;
if($_POST['cust_upd_email'] != $original_value1) {
$this->session->set_flashdata('add_failed','Email id must be unique & valid email address.');
$is_unique = '|is_unique[customer.customer_email]';
} else {
$is_unique = '';
}
$original_value2 = $this->db->query("SELECT customer_mobile FROM customer WHERE id = ".$_POST['ctmr_upd_id'])->row()->customer_mobile ;
if($_POST['cust_upd_mobile'] != $original_value2) {
$this->session->set_flashdata('add_failed','Mobile no must be unique & exact 10 digit numeric length. ');
$is_phoneunique = '|is_unique[customer.customer_mobile]';
} else {
$is_phoneunique = '';
}
$this->form_validation->set_rules('cust_upd_email', 'Email', 'required|valid_email|trim'.$is_unique);
$this->form_validation->set_rules('cust_upd_mobile', 'Mobile', 'required|exact_length[10]|is_natural|trim'.$is_phoneunique);
$this->form_validation->set_rules('cust_upd_name', 'Customer name', 'trim|required|min_length[3]|callback_customAlpha');
$this->session->set_flashdata('cust','The Customer field must be at least 3 characters in length. ');
$this->form_validation->set_rules('cust_upd_bd', 'Date of birth', 'regex_match[(0[1-9]|1[0-9]|2[0-9]|3(0|1))-(0[1-9]|1[0-2])-\d{4}]');
$this->form_validation->set_rules('cust_upd_dom', 'Date of marriage', 'regex_match[(0[1-9]|1[0-9]|2[0-9]|3(0|1))-(0[1-9]|1[0-2])-\d{4}]');
if ($this->form_validation->run()) {
$userdata = $this->session->userdata();
$userId = $userdata['id'];
if (!$userId):
redirect(site_url());
endif;
extract($_POST);
print_r($_POST); exit;
$data = array(
'customer_name' => ucwords($_POST['cust_upd_name']),
'birth_date' => $_POST['cust_upd_bd'],
'anniversery_date' => $_POST['cust_upd_dom'],
'customer_mobile' => $_POST['cust_upd_mobile'],
'customer_email' => $_POST['cust_upd_email'],
'status' => $_POST['cust_upd_status'],
'address' => $_POST['ctmr_address'],
'cat_type' => $_POST['file_cat']
);
$userdata = $this->session->userdata();
$userId = $userdata['id'];
$this->db->where('user_id', $userId);
$this->db->where('id', $_POST['file_cat']);
$this->db->where('cat_status', 'Enable');
$get_file = $this->db->get('category');
$res_file = $get_file->num_rows();
if($res_file >0){
$userdata = $this->session->userdata();
$userId = $userdata['id'];
$this->db->where('user_id', $userId);
$this->db->where('id', $_POST['ctmr_upd_id']);
$ctmr_upd = $this->db->update('customer', $data);
} else {
$this->session->set_flashdata('edit_failed','Something went wrong.');
redirect('customer/edit/'.$_POST['ctmr_upd_id']);
}
redirect(site_url() . '/customer');
} else {
redirect('customer/edit/'.$_POST['ctmr_upd_id']);
}
}
されており、ここに私のビューコードは
<div class="row">
<div class="col-md-12 col-sm-12 col-xs-12">
<?php if($error = $this->session->flashdata('add_failed')): ?>
<div class="row">
<div class="col-lg-9">
<div class="alert alert-dismissible alert-danger col-md-offset-4">
<?php echo $error; ?>
</div>
</div>
</div>
<?php endif; ?>
<?php if($error1 = $this->session->flashdata('edit_failed')): ?>
<div class="row">
<div class="col-lg-9">
<div class="alert alert-dismissible alert-danger col-md-offset-4">
<?php echo $error1; ?>
</div>
</div>
</div>
<?php endif; ?>
<?php if($error2 = $this->session->flashdata('cust')): ?>
<div class="row">
<div class="col-lg-9">
<div class="alert alert-dismissible alert-danger col-md-offset-4">
<?php echo $error2; ?>
</div>
</div>
</div>
<?php endif; ?>
<?php if($_SESSION['dateerror']){
echo '<div class="alert alert-danger col-sm-7 col-md-offset-3" role="alert">'.$_SESSION['dateerror'].'</div>';
unset($_SESSION['dateerror']);
}
?>
されており、ここではスナップです。
私はその検証データと共に提出しようとすると、上記のエラーメッセージが表示されます。
何度も試してみましたが、何も成功しませんでした。
私を導いて、どこが間違っているのか教えてください。
'$ this-> session-> set_flashdata( 'edit_failed'、 '何かが間違っていました。');' –
'という唯一のフラッシュメッセージが設定されています。どうすれば修正できますか? –
if($ this-> session-> flashdata( 'edit_failed')){echo $ this-> session-> flashdata( 'edit_failed')} – hrishi