Сеанс не может быть установлен в функции класса

Я пытался создать многоязычный сайт, но проблема в том, что переменная не может быть установлена ​​после нажатия кнопки отправки для выбора языка:

<form action="<?php $aradown->make_lang(); ?>" method="post">
  <input type="submit"  name="en" value="english" >
  <input type="submit" name="ar" value="arabic" >
</form>

Код функции класса:

public function make_lang(){
  if($_POST['en']){
    $_SESSION['lang_en'];
  }

  if($_POST['ar']){
    $_SESSION['lang_ar'];   
  } 
}   

public function check_lang(){
  if(isset($_SESSION['lang_en'])){
    $lang="english";
  }
  if(isset($_SESSION['lang_ar'])){
    $lang="arabic";
  }
  $path=dirname(__FILE__)."/languages/".$lang.".php";   
  return $path;
}

И это код для использования:

include('includes/core.class.php');
$aradown= new aradown;
$lang_file=$aradown->check_lang();
include($lang_file);

Я пытался напечатать результат $lang_file, но $lang var пуст.

C:\AppServ\www\aradown-new\includes/languages/.php

Что-нибудь пропало?

1 ответ

Решение

Вы должны на самом деле установить переменные на что-то.

    if($_POST['en']){
        $_SESSION['lang_en'] = true;
        }

    if($_POST['ar']){
        $_SESSION['lang_ar'] = true;   
        }

А также начать сеанс с помощью session_start(),

Другие вопросы по тегам