首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PHP Cookies无法正常工作

PHP Cookies无法正常工作
EN

Stack Overflow用户
提问于 2013-07-09 05:51:40
回答 1查看 102关注 0票数 0

所以我在我的网站上有一些CSS3的特效,但我试图给观众一个禁用这些特效的选项。所以我采用了PHP Cookie的方法,但它根本不起作用。

如果没有cookie,我会看到“单击此处启用特效”,即使它们已经启用。直接转到禁用页面也不会关闭它们。

下面是我的代码中的一些片段。

检查是否设置了cookie:

代码语言:javascript
运行
复制
<?php
if(!$_COOKIE['nofancy']){ 
?>
<link rel="stylesheet" type="text/css" href="http://pattersoncode.ca/incls/nofancy.css" media="screen" />
<?php
}
?>

关闭特殊效果:

代码语言:javascript
运行
复制
<p>You have successfully turned off all special effects used in this website. This effect will last 48 hours after which you will need to disable them again. You will be redirected to the homepage in 5 seconds.</p>
<?php
$value = "nofancy";
setcookie("nofancy",$value, time()+3600*48);
?>
<script type='text/javascript'>
setTimeout(function () {
   window.location.href= 'http://www.pattersoncode.ca';

},5000); // 5 seconds
</script>

重新启用特殊效果:

代码语言:javascript
运行
复制
<p>Special effects have been enabled again. This effect will be permanent unless disabled again. You will be redirected to the homepage in 5 seconds.</p>
<?php
setcookie ("nofancy", "", time() - 3600);
?>
<script type='text/javascript'>
setTimeout(function () {
   window.location.href= 'http://www.pattersoncode.ca'; 

},5000); // 5 seconds
</script>

禁用/启用按钮:

代码语言:javascript
运行
复制
<?php
if (!isset($_COOKIE["nofancy"]))
{
?>
 <a href="?a=fancyon"> Turn special effects back on </a> 
<?php
} else {
?>
 <a href="?a=nofancy"> Remove all effects </a> 
<?php
}
?>

有人能帮我吗?被难住了。

EN

回答 1

Stack Overflow用户

发布于 2013-07-09 05:59:49

我建议您设置CSS,以便所有启用奇特功能的选择器都以如下所示的附加类开始:

代码语言:javascript
运行
复制
/* regular CSS - just to demonstrate the normal selectors that have
   nothing to do with fancy CSS stuff */
#foo {
    border: 1px solid hotpink;
    width: 300px;
    height: 200px;
}

/* fancy stuff added here */
.fancy-css #foo {
    box-shadow: 5px 5px 10px lime;
    border-radius: 4px;
}

这样,您就可以通过控制HTML输出来简单地启用/禁用样式。

这样,您就可以通过相应地修改HTML输出来控制服务器上的样式。您还可以通过简单地将类删除/添加到body标记来在不重新加载的情况下切换这些奇特的东西。

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

https://stackoverflow.com/questions/17536601

复制
相关文章

相似问题

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