2012-07-23 102 views
1

我正在建立一个网站,访问者将会在启动屏幕上迎接,他们将为实际网站选择配色方案;根据他们的选择,实际的网站将加载一个不同的样式表。我收集这些可以通过连接一个标志,URL,然后读取下一个页面上的标记URL来确定样式表被加载(例如,加载黑暗的主题来完成,该网址将成为http://www.mywebsite.com/index-dark;点击浅色主题链接将使网址http://www.mywebsite.com/index-light。问题是,我不知道如何添加一个标志的URL,或如何阅读这个标志在不同的页面上我已经尝试使用谷歌搜索这个问题,但没有找到实用的信息。如何做到这一点?如何向网址添加标志?

编辑:我想避免使用两个单独的页面,因为我将有多个主题;这将意味着复制基本上我的根本每个HTML页面多次,占用空间。像一个隐蔽$_GET变量的想法,虽然。

+0

有几个更好的方法来做到这一点。 – 2012-07-23 22:02:02

+2

@ IgnacioVazquez-Abrams除非你提示他们是什么,这不是很有帮助。 – 2012-07-23 22:02:53

+0

@ IgnacioVazquez-Abrams:Session,cookies,url:这就是我所能想到的一个匿名用户 - 你还记得什么等于“几个”? – 2012-07-23 22:03:31

回答

0

您提到的“旗帜”实际上可能是$_GET已使用mod_rewrite伪装的变量。你可以做的是编辑.htaccess文件,以在发生变化,比如重写规则,www.mywebsite.com/index.php?style=index-darkwww.mywebsite.com/index-dark添加(不幸的是我没有在究竟是如何做到这一点的经验,我只知道,这是可以做到),有你的PHP赶上$_GET['style']

1

没有更多的信息,我只能给一些普遍性的建议。

所以我打算假设你正在用PHP创建一个页面,所以你可能有两个不同的URL,并使用mod_rewrite将/index-dark转换为/index?style=dark,但这很糟糕。

你可能需要的是使用Cookie或会话。基本上,您检查主题设置cookiesession value,然后在生成页面时选择适当的CSS文件。

这有几个优点:

  • 使用URL重写,在最好的时候
  • 允许用于永久设置(如果你使用一个Cookie)的易出错的努力不需要和不涉及复杂的网址。
  • 允许添加更多的主题不改变代码山区,只需添加设置主题选择和新的CSS文件。

GET变量通常只对与该请求一起发送的特定数据有用,有点像POST变量主要是用于表单和提交的数据。如果你想持久设置,那么session/cookie是最好的选择。