Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Codeigniter URI页面重定向_Php_Codeigniter_Redirect_Controller_Uri - Fatal编程技术网

Php Codeigniter URI页面重定向

Php Codeigniter URI页面重定向,php,codeigniter,redirect,controller,uri,Php,Codeigniter,Redirect,Controller,Uri,目前我的URI存在问题 示例我有一个名为add-users/add的函数如果我的输入表单有错误,它会在users/add页面上显示错误,但如果一切正常,它会返回到users页面并显示成功,但uri仍然是/users/add,我必须重新导航到users页面 更新: $message = $this->session->userdata('message'); if($message === FALSE) { $message='

目前我的URI存在问题

示例我有一个名为
add
-users/add的函数如果我的输入表单有错误,它会在users/add页面上显示错误,但如果一切正常,它会返回到users页面并显示成功,但uri仍然是/users/add,我必须重新导航到users页面

更新:

$message = $this->session->userdata('message');

        if($message === FALSE)
        {
            $message='';
        }else{
            $this->session->unset_userdata('message');
        }
public function add()
        {
            $this->form_validation->set_rules('userFirstName','First Name', 'required|trim|max_length[99]|xss_clean');
            $this->form_validation->set_rules('userLastName','Last Name', 'required|trim|max_length[99]|xss_clean');
    $this->form_validation->set_rules('userEmail','E-Mail', 'required|valid_email|trim|max_length[99]|xss_clean|is_unique[users.email]');
            $this->form_validation->set_rules('userPassword','Password', 'required|trim|max_length[99]|xss_clean');

            if($this->form_validation->run() === TRUE)
                {
                    $userData = array(
                        'fName' => $this->input->post('userFirstName', TRUE),
                        'lName' => $this->input->post('userLastName', TRUE),
                        'email' => $this->input->post('userEmail', TRUE),
                        'password' => sha1($this->input->post('userPassword', TRUE))
                    );  

                    $this->db->escape($userData);
                    $this->user_model->addUser($userData);

                    $data['contentMangement'] = $this->options_model->systemOptions();
                    $data['pageTitle'] = 'Add User';
                    $data['message'] = '<div class="alert alert-success"><strong>Thank You</strong> Your User Has Been Added</div>';
                    $this->load->view('_assets/dashHeader', $data);
                    $this->load->view('dashboard/users', $data);
                    $this->load->view('_assets/footer');

                }elseif($this->form_validation->run() === FALSE)
                {
                    $data['contentMangement'] = $this->options_model->systemOptions();
                    $data['pageTitle'] = 'Add User';
                    $data['message'] = validation_errors('<div class="alert alert-error">', '</div>'); 
                    $this->load->view('_assets/dashHeader', $data);
                    $this->load->view('dashboard/addUser', $data);
                    $this->load->view('_assets/footer');
                }
        }
添加:

 $data['message'] = '<div class="alert alert-success"><strong>Thank You</strong> Your User Has Been Added</div>';
   $this->session->set_userdata('message', $data['message']);
   redirect(site_url('dashboard/users'));
原件:

$message = $this->session->userdata('message');

        if($message === FALSE)
        {
            $message='';
        }else{
            $this->session->unset_userdata('message');
        }
public function add()
        {
            $this->form_validation->set_rules('userFirstName','First Name', 'required|trim|max_length[99]|xss_clean');
            $this->form_validation->set_rules('userLastName','Last Name', 'required|trim|max_length[99]|xss_clean');
    $this->form_validation->set_rules('userEmail','E-Mail', 'required|valid_email|trim|max_length[99]|xss_clean|is_unique[users.email]');
            $this->form_validation->set_rules('userPassword','Password', 'required|trim|max_length[99]|xss_clean');

            if($this->form_validation->run() === TRUE)
                {
                    $userData = array(
                        'fName' => $this->input->post('userFirstName', TRUE),
                        'lName' => $this->input->post('userLastName', TRUE),
                        'email' => $this->input->post('userEmail', TRUE),
                        'password' => sha1($this->input->post('userPassword', TRUE))
                    );  

                    $this->db->escape($userData);
                    $this->user_model->addUser($userData);

                    $data['contentMangement'] = $this->options_model->systemOptions();
                    $data['pageTitle'] = 'Add User';
                    $data['message'] = '<div class="alert alert-success"><strong>Thank You</strong> Your User Has Been Added</div>';
                    $this->load->view('_assets/dashHeader', $data);
                    $this->load->view('dashboard/users', $data);
                    $this->load->view('_assets/footer');

                }elseif($this->form_validation->run() === FALSE)
                {
                    $data['contentMangement'] = $this->options_model->systemOptions();
                    $data['pageTitle'] = 'Add User';
                    $data['message'] = validation_errors('<div class="alert alert-error">', '</div>'); 
                    $this->load->view('_assets/dashHeader', $data);
                    $this->load->view('dashboard/addUser', $data);
                    $this->load->view('_assets/footer');
                }
        }
控制器:

$message = $this->session->userdata('message');

        if($message === FALSE)
        {
            $message='';
        }else{
            $this->session->unset_userdata('message');
        }
public function add()
        {
            $this->form_validation->set_rules('userFirstName','First Name', 'required|trim|max_length[99]|xss_clean');
            $this->form_validation->set_rules('userLastName','Last Name', 'required|trim|max_length[99]|xss_clean');
    $this->form_validation->set_rules('userEmail','E-Mail', 'required|valid_email|trim|max_length[99]|xss_clean|is_unique[users.email]');
            $this->form_validation->set_rules('userPassword','Password', 'required|trim|max_length[99]|xss_clean');

            if($this->form_validation->run() === TRUE)
                {
                    $userData = array(
                        'fName' => $this->input->post('userFirstName', TRUE),
                        'lName' => $this->input->post('userLastName', TRUE),
                        'email' => $this->input->post('userEmail', TRUE),
                        'password' => sha1($this->input->post('userPassword', TRUE))
                    );  

                    $this->db->escape($userData);
                    $this->user_model->addUser($userData);

                    $data['contentMangement'] = $this->options_model->systemOptions();
                    $data['pageTitle'] = 'Add User';
                    $data['message'] = '<div class="alert alert-success"><strong>Thank You</strong> Your User Has Been Added</div>';
                    $this->load->view('_assets/dashHeader', $data);
                    $this->load->view('dashboard/users', $data);
                    $this->load->view('_assets/footer');

                }elseif($this->form_validation->run() === FALSE)
                {
                    $data['contentMangement'] = $this->options_model->systemOptions();
                    $data['pageTitle'] = 'Add User';
                    $data['message'] = validation_errors('<div class="alert alert-error">', '</div>'); 
                    $this->load->view('_assets/dashHeader', $data);
                    $this->load->view('dashboard/addUser', $data);
                    $this->load->view('_assets/footer');
                }
        }
公共函数添加()
{
$this->form_validation->set_规则('userFirstName','First Name','required | trim | max_length[99]| xss_clean');
$this->form_validation->set_规则('userLastName','Last Name','required | trim | max_length[99]| xss_clean');
$this->form_validation->set_rules('userEmail','E-Mail','required | valid|email | trim | max|u length[99]| xss|u clean |是唯一的[users.email]|;
$this->form_validation->set_规则('userPassword','Password','required | trim | max_length[99]| xss_clean');
如果($this->form\u validation->run()==TRUE)
{
$userData=array(
'fName'=>this->input->post('userFirstName',TRUE),
“lName”=>this->input->post('userLastName',TRUE),
'email'=>$this->input->post('userEmail',TRUE),
'password'=>sha1($this->input->post('userPassword',TRUE))
);  
$this->db->escape($userData);
$this->user\u model->addUser($userData);
$data['contentmanagement']=$this->options\u model->systemOptions();
$data['pageTitle']=“添加用户”;
$data['message']='谢谢您的用户已添加';
$this->load->view(“\u assets/dashHeader”,$data);
$this->load->view('dashboard/users',$data);
$this->load->view(“U资产/页脚”);
}elseif($this->form\u validation->run()==FALSE)
{
$data['contentmanagement']=$this->options\u model->systemOptions();
$data['pageTitle']=“添加用户”;
$data['message']=验证错误('''');
$this->load->view(“\u assets/dashHeader”,$data);
$this->load->view('dashboard/addUser',$data);
$this->load->view(“U资产/页脚”);
}
}

发生这种情况是因为您没有从当前页面重定向。您只是从
users/add
加载“users”视图

这样想:您所在的页面是
users/add
。此页面显示的内容由您加载的视图决定。因此,即使您加载了
user
视图,您仍然处于
users/add
页面

如果您想重定向,而不是

$this->load->view('dashboard/users',$data);
你需要做什么

redirect(site_url('users')); //or whatever your controller is called
但是,在后一种情况下,不能像加载视图时那样传递数据。如果要在重定向后保留数据,则需要将其存储在会话中

因此,在上面的代码中,创建$data['message'],将其添加到会话中:

$this->session->set_userdata('message',$data['message']);
重定向时,在另一个控制器上检索消息,并将其从会话中删除:

$message = $this->session->userdata('message');

if ($message === FALSE) {
   // message was not present in session
   $message = '';
} else {
    $this->session->unset_userdata('message');
}
编辑

在编辑中,在
用户
控制器中,您正在从会话中提取消息。但是,它对视图不可用。你还需要把它传下去

$message = $this->session->userdata('message');

if($message === FALSE)
{
    $message='';
} else {
    $this->session->unset_userdata('message');
}

//at this point, message is only available to the controller
// lets send it to the view

$data['message'] = $message;
$this->load->view('yourView',$data);

这是因为您没有从当前页面重定向。您只是从
users/add
加载“users”视图

这样想:您所在的页面是
users/add
。此页面显示的内容由您加载的视图决定。因此,即使您加载了
user
视图,您仍然处于
users/add
页面

如果您想重定向,而不是

$this->load->view('dashboard/users',$data);
你需要做什么

redirect(site_url('users')); //or whatever your controller is called
但是,在后一种情况下,不能像加载视图时那样传递数据。如果要在重定向后保留数据,则需要将其存储在会话中

因此,在上面的代码中,创建$data['message'],将其添加到会话中:

$this->session->set_userdata('message',$data['message']);
重定向时,在另一个控制器上检索消息,并将其从会话中删除:

$message = $this->session->userdata('message');

if ($message === FALSE) {
   // message was not present in session
   $message = '';
} else {
    $this->session->unset_userdata('message');
}
编辑

在编辑中,在
用户
控制器中,您正在从会话中提取消息。但是,它对视图不可用。你还需要把它传下去

$message = $this->session->userdata('message');

if($message === FALSE)
{
    $message='';
} else {
    $this->session->unset_userdata('message');
}

//at this point, message is only available to the controller
// lets send it to the view

$data['message'] = $message;
$this->load->view('yourView',$data);

你是一个了不起的帮助,谢谢,我已经更新了我的代码,因为我没有成功进入视图。一点问题都没有。很高兴能帮忙。如果我的帖子回答了您的问题,请不要忘记通过单击复选标记“接受”它。您可以查看我的问题更新,因为我在我的用户视图中似乎没有收到消息吗?您是一个了不起的帮助。谢谢,我更新了我的代码,因为我没有在视图中获得成功。一点问题都没有。很高兴能帮忙。如果我的帖子回答了您的问题,请不要忘记单击复选标记“接受”它。您可以查看我的问题更新,因为我似乎没有在我的用户视图中收到消息吗?