브라우저 버전의 웹 앱이 있으며 일부 값이 쿠키에 저장되어 있습니다. 이제 모바일 버전을 만들고 있는데 내 쿠키가 작동하지 않는 것 같습니다. 모바일 장치에서 쿠키를 사용할 수 있습니까?모바일 브라우저는 세션 변수를 지원하지 않습니까?
는이 코드를 수행하기 위해 노력하고 내 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);
}
});
이 쿠키로 작업 할 수 있도록 내부 메모리에 데이터를 저장하는 다른 방법이 있나요를? 휴대 기기는 세션 변수를 지원합니까? 방화 광구를보고 있는데 세션 변수를 만들 수 있다는 것을 알 수 있지만 그것을 읽고 싶을 때는 null입니다. 무엇이 문제 일 수 있으며이를 해결하는 방법은 무엇입니까?
편집 : 나는 당신에게 내가하는 일을 볼 수 있도록 거의 모든 코드를 넣을 것이다 ... btw. 이 코드는 PC 브라우저에서 정상적으로 작동합니다.
자바 스크립트 파일 :
을 그리고 마지막은 pass_value.php입니다 :
$(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 사이트에 :
<?php
session_start();
$_SESSION['SESS_LANGUAGE'] = $_POST['lang'];
print json_encode(array('message' => $_SESSION['SESS_LANGUAGE']));
die();
?>
나는이 코드가 휴대 전화에서 작동하지 않는 이유를 정말로 모른다.
세션 ID는 쿠키를 통해 또는 GET 방법을 통해, 그리고 내가 아는 바를 통해 전달 될 수 있습니다. 모바일 장치의 브라우저는 쿠키를 지원합니다. 코드가 실제로 작동하는지 확신합니까? 세션을 시작한 적이 있습니까? –
[HTML 5 Web Storage 살펴보기] (http://www.sitepoint.com/a-better-cookie-html5-and-web-storage/#fbid=PofM_1DrEuA) –
그래서 세션 변수로 저장하는 대신 I 웹 저장소에 저장 하시겠습니까? –