Codeigniter重定向方法无效

时间:2015-04-21 03:55:49

标签: codeigniter redirect

这是我的User.php控制器

我无法使用重定向方法。

我正在使用xampp localhost

?php
if (!defined('BASEPATH'))
    exit('No direct script access allowed');

class User extends CI_Controller {


    public function __construct()
    {
        parent::__construct();
        // Your own constructor code
         $this->load->library('Admin_layout');
         $this->config->load('reg_rules');
         $this->load->model('admin/user_model');
          $this->load->helper('form');
          $this->load->helper('url');
    }

    public function index()
    {
         if (!$this->auth->loggedin()) {
            redirect('admin/login');
        }
    }   

    public function add(){ 

        //if($this->input->post('submit')){

        $this->form_validation->set_rules($this->config->item('reg_settings'));
        $data["reg_attrib"] = $this->config->item("reg_attribute");

        $this->form_validation->set_error_delimiters('', '');

         if ($this->form_validation->run('submit') == FALSE)
        {       
            // templating 

            $this->admin_layout->set_title('Add a User'); 
            $this->admin_layout->view('admin/add_user',$data["reg_attrib"]);
            // templating 

        }
        else
        {
            // Develop the array of post data and send to the model.

            $passw = $this->input->post('password');
            $hashpassword = $this->hash($passw);

            $user_data = array(
                'name' => $this->input->post('name'),
                'gender' => $this->input->post('gender'),
                'phone' => $this->input->post('contact_no'),
                'email' => $this->input->post('email'),
                'password' => $this->hash($hashpassword),
                'doj' => time(),
            );

            $user_id = $this->user_model->create_user($user_data);

这里我使用set_flashdata设置我的成功消息 并重定向

            if($user_id){

                 $this->session->set_flashdata('item', 'Record created successfully');
                 $this->redirect('admin/user/add','refresh');

            }else{
                 echo "User Registration Failed!";
            }
        }//else

    //} // submit


    } // add
}

View_users.php

 <?php
if($this->session->flashdata('item')) 
{
  echo $message = $this->session->flashdata('item');
}
?>

我收到以下错误

Fatal error: Call to undefined method User::redirect() in C:\xampp\htdocs\ci\application\controllers\admin\User.php on line 67
A PHP Error was encountered

Severity: Error

Message: Call to undefined method User::redirect()

Filename: admin/User.php

Line Number: 67

Backtrace:

1 个答案:

答案 0 :(得分:4)

尝试从

更改
$this->redirect('admin/user/add','refresh');

redirect('admin/user/add','refresh');

希望它对你有用。