Мобильные браузеры не поддерживают переменные сеанса?
У меня есть браузерная версия моего веб-приложения, и у меня есть некоторые значения, хранящиеся в файлах cookie. Сейчас я делаю мобильную версию, и кажется, что мои куки не работают. Можно ли использовать куки на мобильных устройствах?
Я пытаюсь выполнить этот код, и мой PHP дает мне пустое значение:
$(document).ready(function() {
var session_lang= '<?php if(isset($_SESSION['SESS_LANGUAGE']))
echo $_SESSION['SESS_LANGUAGE'];?>';
if (session_lang!='')
{
check_and_change(session_lang);
}
});
Есть ли другой способ сохранить данные во внутренней памяти, чтобы они могли работать как cookie? Поддерживают ли мобильные устройства переменные сеанса? Я смотрю на firebug и вижу, что могу создать переменную сеанса, но когда я хочу ее прочитать, она пуста. В чем может быть проблема и как ее решить?
РЕДАКТИРОВАТЬ: Я поставлю вам почти весь код, чтобы вы могли видеть, что я делаю ... кстати. этот код нормально работает в браузере ПК.
Файл Javascript:
$(document).ready(function() {
function languageChange()
{
var lang = $('#websites1 option:selected').val();
return lang;
}
$('#websites1').change(function(e) {
var lang = languageChange();
var dataString = 'lang=' + lang;
$.ajax({
type: "POST",
url: "pass_value.php",
data: dataString,
dataType: 'json',
cache: false,
success: function(response) {
check_and_change(response.message);
}
});
return false;
});
} );
function check_and_change(lang)
{
switch (lang)
{ //do something
}
}
Тогда эта первая часть, которую я поместил выше, находится на фактическом php-сайте, который я ищу и который открывается:
И последняя вещь - это pass_value.php:
<?php
session_start();
$_SESSION['SESS_LANGUAGE'] = $_POST['lang'];
print json_encode(array('message' => $_SESSION['SESS_LANGUAGE']));
die();
?>
Я действительно не знаю, почему этот код не работает на мобильных телефонах.