我需要重定向到我的(选择/链接)被选中或被点击(语言)的页面。
即使我更改其他页面/视图上的语言,它也会将我重定向到redirect(base_url());
主页。我该如何解决
这是我的LangSwitch控制器:
class LangSwitch extends CI_Controller
{
public function __construct() {
parent::__construct();
$this->load->helper('url');
}
function switchLanguage($language = "") {
$language = ($language != "") ? $language : "english";
$this->session->set_userdata('site_lang', $language);
redirect(base_url());
}
}
这是我的语言加载器控制器:
class LanguageLoader
{
function initialize() {
$ci =& get_instance();
$ci->load->helper('language');
$site_lang = $ci->session->userdata('site_lang');
if ($site_lang) {
$ci->lang->load('nav_menu',$ci->session->userdata('site_lang'));
} else {
$ci->lang->load('nav_menu','english');
}
}
}
这是我的TestLanguage Loader控制器:
class TestLanguage extends CI_Controller
{
public function __construct() {
parent::__construct();
$this->lang->load("nav_menu","english");
$this->load->library('session');
}
function index() {
$data["main_production"] = $this->lang->line("main_production");
$this->load->view('nav_menu', $data);
}
}
我使用此路径作为链接:
<a href="<?=base_url()?>langswitch/switchLanguage/english">
答案 0 :(得分:0)
尝试使用$_SERVER['HTTP_REFERER']
重定向到上次访问的网址:
if(!empty($_SERVER['HTTP_REFERER'])){
redirect($_SERVER['HTTP_REFERER']);
} else {
redirect(base_url());
}