0

我有我的网络应用程序的浏览器版本,并且我有一些值存储在 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();
?>

我真的不知道为什么这个代码在手机上不起作用。

4

3 回答 3

6

Cookie绝对 适用于移动浏览器。你说“我在看萤火虫”,这让我觉得你并没有真正在手机上看它。

您是否已开始会话打开错误报告

于 2012-08-23T12:02:33.790 回答
0

我也遇到过类似的情况,发现在我的平板调用我在.ajax( )调用的 URL 参数中指定的脚本之前,它实际上是在index.php再次调用该脚本。

我的手机也是这样。由于我已经在 中初始化了我的会话变量index.php,它们不断被重新设置为它们的初始值(看起来它们没有被正确地存储在页面之间)。

我从来没有弄清楚为什么index.php会被召回,但我if !isset( )在初始化语句周围添加了检查,并清除了它。

于 2014-10-01T09:32:27.217 回答
-1

在 Android 上,打开“数据保护程序”有效地破坏了我的会话。我有一个登录脚本,登录成功后会重定向到上一页。一直工作到我打开数据保护程序。关闭它使其再次工作。谷歌确实声明数据保护程序可能会影响我猜想包括我的脚本的安全页面,该脚本不在 HTTPS 网站上。

于 2017-05-09T05:52:05.507 回答