2012-07-23 49 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是最好的選擇。