Я хочу сделать сайт с несколькими языками и выбрать язык с помощью ajax, и разные слова будут выбраны из базы данных, и я хочу использовать сессию [lang], и я не хочу использовать GET [lang].я пытаюсь из 5 дней сделать это, но я пробую так много вариантов, и я запутался сейчас
сейчас я здесь:
у меня есть модель -> Langs ->
function set_langs($arg) {
$this->session->unset_userdata(‘lang’);
$this->session->set_userdata(‘lang’, $arg);
return $arg;
}
function get_langs() {
return $this->session->userdata(‘lang’);
}
в Home контроллере ->
public function index(){
if($this->session->userdata(‘lang’)==’‘){
$this->Langs->set_langs(‘en’);
$glang[‘lang’] = $this->Langs->get_langs();
}else{
$glang[‘lang’] = $this->Langs->get_langs();
}
$this->load->view(‘header’, $glang);
}
public function set()
{
if($_POST && $_POST[‘lang’] != NULL) {
$this->Langs->set_langs($_POST[‘lang’]);
$return[‘error’] = false;
$return[‘msg’] = $this->session->userdata(‘lang’).’ ok!’;
echo json_encode($return);
}else{...}
}
и в header.php-> в JS ->
$.ajax({
type: “POST”,
url: “index.php/home/set”,
dataType : ‘json’,
data: “lang=”+lang,
success: function(data){
if(data.error === true){
$( “#dialog-message2” ).text(data.msg).dialog({
modal: true,
buttons: {
Ok: function() {
$( this ).dialog( “close” );[removed]=location.href;
}
}
});
}else{...}
, когда страница обновляется, язык не изменился, но при возврате сообщения из ajax это работает, так что, где я ошибаюсь, извините за плохой английский спасибо
* проблема была -> system / library / Session.php (исходный файл из CodeIgniter_2.0.2.zip) -> я загружаю http://codeigniter.com/wiki/File:CI_1.5.1_with_Session.zip/ и никаких проблем