Mobile Browser unterstützen keine Sitzungsvariablen?
Ich habe eine Browserversion meiner Web-App und ich habe einige Werte in Cookies gespeichert. Jetzt erstelle ich eine mobile Version und es scheint, dass meine Cookies nicht funktionieren. Ist es möglich, Cookies auf Mobilgeräten zu verwenden?
Ich versuche diesen Code auszuführen und mein PHP gibt mir einen leeren Wert:
$(document).ready(function() {
var session_lang= '<?php if(isset($_SESSION['SESS_LANGUAGE']))
echo $_SESSION['SESS_LANGUAGE'];?>';
if (session_lang!='')
{
check_and_change(session_lang);
}
});
Gibt es eine andere Möglichkeit, Daten im internen Speicher zu speichern, damit sie als Cookie verwendet werden können? Unterstützt Mobilgeräte Sitzungsvariablen? Ich schaue auf den Firebug und sehe, dass ich eine Sitzungsvariable erstellen kann, aber wenn ich ihn lesen möchte, ist er null. Was könnte ein Problem sein und wie kann es gelöst werden?
EDIT: Ich werde Ihnen fast den gesamten Code geben, damit Sie sehen können, was ich tue ... übrigens. Dieser Code funktioniert normalerweise im PC-Browser.
Javascript-Datei:
$(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
}
}
Dann ist dieser erste Teil, den ich oben geschrieben habe, auf der eigentlichen PHP-Seite, die ich suche und die sich öffnet:
Und das Letzte ist pass_value.php:
<?php
session_start();
$_SESSION['SESS_LANGUAGE'] = $_POST['lang'];
print json_encode(array('message' => $_SESSION['SESS_LANGUAGE']));
die();
?>
Ich weiß wirklich nicht, warum dieser Code auf den Handys nicht funktioniert.