首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否启用或禁用Javascript/Cookies?

问是否启用或禁用Javascript/Cookies?
EN

Stack Overflow用户
提问于 2009-06-23 16:09:46
回答 6查看 9.3K关注 0票数 3

我正在寻找一些代码,如果用户启用或禁用了JavaScript,将返回我的值,以及cookies。

我知道这样做可能很容易,但我的时间限制太紧了,太伤人了。必须有一些使用php来实现这个功能的东西。理想情况下,我希望找到具有可能影响我的脚本的所有可能值的页面设置的代码。

编辑:显然, JavaScript可能是禁用的,但是,我希望能够找到一些东西来测试这两种情况。

我的解决方案

对于其他正在寻找代码以检测用户是否启用或禁用cookie的代码,下面是我从下面的文章中得出的结论.你可以把它放在任何一页的顶端,它可以工作.

代码语言:javascript
复制
<?php
// do a cookie test
if (!isset($_SESSION['cookie_check']))
{
    if (!isset($_GET['cc']))
    {
        // drop a cookie in their bag
        setcookie("cookiecheck", "ok", time()+3600);
        header("Location: ".$common->selfURL()."?cc=1");
        exit(0);
    }
    else
    {
        // do we have a problem?
        if (@$_COOKIE['cookiecheck'] != "ok")
        {
            // we have a problem
            header("Location: /site-diag.php");
            exit(0);
        }
        else
        {
            $_SESSION['cookie_check'] = true;
        }
    }
}
?>
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2009-06-23 16:17:22

首先,要意识到如果关闭了JavaScript,就不能使用JavaScript来检查cookies。通常检查饼干开着是写一个,然后读它。

当cookies打开但JavaScript关闭时,您关心这种情况吗?根据这些信息你打算怎么做?

我找到了这里的代码,用于通过PHP检查cookie。不依赖JavaScript。PHP是您的服务器语言吗?

代码语言:javascript
复制
<?php
class cookieCheck
{

    public function check()
    {
        if (setcookie("test", "test", time() + 100))
        {
            //COOKIE IS SET 
            if (isset ($_COOKIE['test']))
            {
                return "Cookies are enabled on your browser";
            }
            else
            {
                return "Cookies are <b>NOT</b> enabled on your browser";
            }
        }

    }
}
?>
票数 -6
EN

Stack Overflow用户

发布于 2009-06-23 16:13:26

您可以使用jQuery cookie插件编写一个cookie,然后查看是否可以再次读取它。这将告诉您是否在客户端浏览器中启用了cookie。

票数 2
EN

Stack Overflow用户

发布于 2009-06-23 16:21:48

为了检查Javascript,他们要么有,要么没有。如果没有,你可以使用<noscript>标签来显示一条消息,要求他们打开它,在里面放一个元重定向等等。这就是你测试能力的范围。

至于cookie,只需尝试设置一个cookie,然后再读取它!由于您关注Javascript处理cookie的能力,我假设您已经有了正在使用的cookie库,这意味着您可以使用测试cookie的set函数,然后再使用get函数来读取它。如果无法读取测试cookie,则cookie将被关闭。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1033595

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档