我有我的網絡應用程序的瀏覽器版本,我有一些存儲在cookie中的值。現在我正在製作移動版本,而且看起來我的Cookie不起作用。 可以在移動設備上使用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的工作呢? 移動設備是否支持會話變量?我看着螢火蟲,我可以看到我可以創建會話變量,但是當我想讀取它時,它是空的。 什麼可能是一個問題,以及如何解決這個問題?
編輯: 我會把你幾乎完整的代碼,所以你可以看到我在做什麼...順便說一句。此代碼在PC瀏覽器上正常工作。
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();
?>
我真的不知道爲什麼這段代碼無法在手機上工作。
會話ID可以通過cookie或通過GET方法傳遞,並且據我所知 - 移動設備上的瀏覽器確實支持cookie。你確定你的代碼真的有效嗎?你甚至開始了會議嗎? –
[看看HTML 5 Web存儲(http://www.sitepoint.com/a-better-cookie-html5-and-web-storage/#fbid=PofM_1DrEuA) –
所以不是保存到會話變量我正在保存到網絡存儲? –