Ниже приведен контроллер и просмотр, но он не проверен и перенаправляется только на: пустую страницу. Я внес некоторые изменения, но ничего не происходит.
контроллер:
<?php class Home extends CI_Controller { public function __construct() { parent::__construct(); $this->load->library(array('form_validation','session')); // load form lidation libaray & session library $this->load->helper(array('url','html','form')); // load url,html,form helpers optional } public function index(){ // set validation rules $this->form_validation->set_rules('name', 'Name', 'required|min_length[4]|max_length[10]'); $this->form_validation->set_rules('email', 'Email', 'required|valid_email'); $this->form_validation->set_rules('number', 'Phone Number', 'required|numeric|max_length[15]'); $this->form_validation->set_rules('subject', 'Subject', 'required|max_length[10]|alpha'); $this->form_validation->set_rules('message', 'Message', 'required|min_length[12]|max_length[100]'); // hold error messages in div $this->form_validation->set_error_delimiters('<div class="error">', '</div>'); // check for validation if ($this->form_validation->run() == FALSE) { $this->load->view('viewform'); }else{ $this->session->set_flashdata('item', 'form submitted successfully'); redirect('Home'); } } } ?>
Посмотреть:
<?php if(validation_errors()) { ?> <div class="alert alert-warning"> <?php echo validation_errors(); ?> </div> <?php } ?> <?php if($this->session->flashdata('item')) { ?> <div class="alert alert-success"> <?php echo $this->session->flashdata('item'); ?> </div> <?php } ?> <?php echo form_open(); ?> <div class="form-group"> <?php echo form_label('Your Name','name'); ?> <?php echo form_input(array("class"=>"form-control","name" => "name", "placeholder"=>"Enter Name","value" => set_value('name'))); ?> </div> <div class="form-group"> <?php echo form_label('Email address','EmailAddress'); ?> <?php echo form_input(array("class"=>"form-control","name" => "email", "placeholder"=>"Enter email","value" => set_value('email'))); ?> </div> <div class="form-group"> <?php echo form_label('Phone Number','number'); ?> <?php echo form_input(array("class"=>"form-control","name" => "number", "placeholder"=>"Enter Phone Number","value" => set_value('number'))); ?> </div> <div class="form-group"> <?php echo form_label('Subject','subject'); ?> <?php echo form_input(array("class"=>"form-control","name" => "subject", "placeholder"=>"Enter Subject","value" => set_value('subject'))); ?> </div> <div class="form-group"> <?php echo form_label('Message','message'); ?> <?php echo form_input(array("class"=>"form-control","name" => "message", "placeholder"=>"Enter Message","value" => set_value('message'))); ?> </div> <button type="submit" class="btn btn-default">Submit</button> <?php echo form_close(); ?>
поэтому, когда есть какая-либо ошибка, страница перенаправляется примерно на: пустую, даже если все поля являются правильными или неправильными, как это исправить?