2017-10-10 108 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');

無需網站的網址。重定向時必須給控制器名稱。

相關問題