如何使用浏览器检测cookie和javascript

时间:2010-08-30 21:46:27

标签: php

我在XAMPP上使用PHP / JavaScript / MySQL来开发原型。

我需要使用反过来利用cookie的会话。这是问题, 我如何知道用户的浏览器是否支持cookie。

为了检测javascript,我使用了<noscript></noscript>。如果我错了,请纠正我。

谢谢

3 个答案:

答案 0 :(得分:2)

您必须设置一个Cookie并对其进行测试以确定它们是否已启用:

<script type = "text/javascript" language = "JavaScript">

   var tmpcookie = new Date();
   chkcookie = (tmpcookie.getTime() + '');
   document.cookie = "chkcookie=" + chkcookie + "; path=/";
    if (document.cookie.indexOf(chkcookie,0) < 0) {
      window.location = 'nocookies.html';
      }
    else {
      window.location = 'cookies.html';
    }

</script>

答案 1 :(得分:2)

  

这是一个问题,我怎么知道是否   用户的浏览器是否支持cookie。

如果未设置cookie,请设置cookie并重定向到检查cookie是否已设置的页面。如果是,请重定向,否则重定向到“抱歉,我们确实需要Cookie”页面。

只有在确实需要Cookie的情况下才能执行此操作。

  

为了检测javascript,我使用了<noscript></noscript>。如果我错了,请纠正我。

最好build on things that work

答案 2 :(得分:1)

我会选择不同的检测方式。

要检测javascript是否启用/禁用,我会写一些小元素(可能是div),我会执行一些javascript来删除这些元素。因此,当javascript被禁用/不存在时,那些元素仍将在那里说“请激活你的Javascript”。另一方面,由于javascript已经删除它们,这些元素将会消失。毕竟,它回到了您的网站概念。当javascript不存在/禁用时,某些网站无法执行任何操作,并且他们选择将请求重定向到另一个页面(通过标记)。有些网站仍然可以运行但某些功能将无法使用,这个概念会导致“警告”技术。

要检测cookie是否已启用/禁用,只需使用Javascript设置cookie即可。在下一个请求中,您可以检查是否设置了此cookie。如果已设置,则启用Javascript和Cookie。如果未设置,则禁用Javascript或Cookie或两者。

祝你好运