2017-10-10 167 views
0

我想重定向,但它似乎并不工作。浏览器url不会更新,但是我可以在(Network)inspect元素中看到视图。Codeigniter重定向不更新浏览器网址

查看代码

<form method="post" role="form" action="<?= site_url(); ?>entrytest/printslips"> 
       <label>Filter Options</label> 
       <select class="form-control" name="option"> 
        <option value="all">Print All</option> 
        <option value="sort">Print Selected</option> 
       </select> 
      <button type="submit" class="btn btn-primary">Print</button> 
      </div> 
      </form> 

控制器代码

public function printslips() { 
//print_r($_POST); 
    $option = $this->input->post('option'); 
    //echo $option; 
    if($option == "all"){ 
     redirect(site_url() . 'student/print'); 
    } 
    elseif($option == "sort"){ 
     echo $option; 
    } 
    else{ 

    } 
} 

我可以看到在网络中而不是在浏览器

012加载视图

回答

0

你需要返回重定向这样的:

return redirect('your_controller'); 
1

试试这个,

public function printslips() { 
    $option = $this->input->post('option'); 
    if($option == "all"){ 
     redirect('student/print'); 
    } 
    elseif($option == "sort"){ 
     echo $option; 
    } 
} 

虽然你不redirectin控制器动作需要通过SITE_URL。只需传递控制器和操作名称。

或者为了您的安全目的,更好地向用户AddMyTodo重定向或调用函数。

问候!

+0

我尝试解决方案,但不适用于我 – user3338144

+0

仍然无法正常工作 – user3338144

0

请使用此代码。

redirect('student/print');

无需网站的网址。重定向时必须给控制器名称。

相关问题