我正在寻找一些代码,如果用户启用或禁用了JavaScript,将返回我的值,以及cookies。
我知道这样做可能很容易,但我的时间限制太紧了,太伤人了。必须有一些使用php来实现这个功能的东西。理想情况下,我希望找到具有可能影响我的脚本的所有可能值的页面设置的代码。
编辑:显然, JavaScript可能是禁用的,但是,我希望能够找到一些东西来测试这两种情况。
我的解决方案
对于其他正在寻找代码以检测用户是否启用或禁用cookie的代码,下面是我从下面的文章中得出的结论.你可以把它放在任何一页的顶端,它可以工作.
<?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;
}
}
}
?>发布于 2009-06-23 16:17:22
首先,要意识到如果关闭了JavaScript,就不能使用JavaScript来检查cookies。通常检查饼干开着是写一个,然后读它。
当cookies打开但JavaScript关闭时,您关心这种情况吗?根据这些信息你打算怎么做?
我找到了这里的代码,用于通过PHP检查cookie。不依赖JavaScript。PHP是您的服务器语言吗?
<?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";
}
}
}
}
?>发布于 2009-06-23 16:13:26
您可以使用jQuery cookie插件编写一个cookie,然后查看是否可以再次读取它。这将告诉您是否在客户端浏览器中启用了cookie。
发布于 2009-06-23 16:21:48
为了检查Javascript,他们要么有,要么没有。如果没有,你可以使用<noscript>标签来显示一条消息,要求他们打开它,在里面放一个元重定向等等。这就是你测试能力的范围。
至于cookie,只需尝试设置一个cookie,然后再读取它!由于您关注Javascript处理cookie的能力,我假设您已经有了正在使用的cookie库,这意味着您可以使用测试cookie的set函数,然后再使用get函数来读取它。如果无法读取测试cookie,则cookie将被关闭。
https://stackoverflow.com/questions/1033595
复制相似问题