单击另一个链接时,php Session变量变为未定义

时间:2018-11-26 07:31:08

标签: php codeigniter

I have designed a bilingual website initially loading in Arabic language by declaring a session variable 'language'.The index page load correctly ,but when i click the button to convert the language i'am getting the session variable undefined.please help me to fix this issue.

此下面的函数加载主页。这里是在主页中获取会话变量。

public function index(){
    $_SESSION['page'] = 'Home';
    if(empty( $_SESSION["language"])){
        $_SESSION["language"] = "_ar";
    }
    $this->load->view('site'.$_SESSION["language"].'/index',$data);

}

    In the home page when i click the language convert button it call the below controller function,but the session variable become undefined in this controller function.

当我打开我时

public function lang_change_ar_to_eng() {
    if ($_SESSION["language"] == "_en")
        $_SESSION["language"] = "_ar";
    else if($_SESSION["language"] == "_ar")
        $_SESSION["language"] = "_en";                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
    echo json_encode($_SESSION["language"]);
}

当我在隐身窗口中打开时,我得到了会话变量,我不知道出了什么问题

3 个答案:

答案 0 :(得分:1)

大多数会话错误来自“未声明 session_start()

您可以通过以下代码检查会话是否仍然存在。

echo session_id();

如果显示Null或空字符串,则表示会话已关闭。

答案 1 :(得分:0)

可以通过在服务器上使用php版本7.2解决此问题

答案 2 :(得分:-1)

也许您可以向我们展示一些代码。我认为您的配置有误。