長話短說,我有一個主站點和它的移動版本。我試圖創建一個「查看完整網站」按鈕,單擊時,它執行2個功能。他們是鏈接出jQuery手機+設置cookie + PHP =主要頭痛。請幫助
1.設置一個cookie,以便主頁可以跟蹤是否點擊「查看完整網站」按鈕。
2.導航到主要的父(不是移動)網站點擊。
我已經嘗試了很多東西,所以我不會阻塞頁面(我的大腦都在這個地方)。反正 我試圖解決它的最終辦法是,通過我
-1打破了這一切的Loooooong方式。創建按鈕
-2。上點擊,瀏覽與PHP是設置cookie的處理器頁面,這樣做後,重定向到主站點
-3。主站點有php,檢查「查看完整站點是否被點擊」
它仍然無法正常工作。
下面是什麼我嘗試做的,用什麼IM做一個很好的說明:
- jQuery Mobile的(網站內此建)
- PHP移動檢測(http://code.google.com/p/php-mobile-detect/)
- jQuery的餅乾(https://github.com/carhartl/jquery-cookie)
注意:就設置cookie和測試它們的存在而言,它們各自適用。
在主網站的索引,在開口HTML標記上方頭我有此 PHP:
if(!isset($_COOKIE['dontDoMob'])){
//its not set so check for device type.
include("Mobile_Detect.php");
$detect = new Mobile_Detect();
if ($detect->isMobile()) {
//"its some kind of mobile device so redirect to mobile";
header("Location:http://myforecyte.com/m/");
exit();
}
}
在移動站點的索引,i有一個按鈕(「查看完整網站「),點擊應該通過jQuery設置cookie(單獨工作),然後重定向到主頁,因爲在那個時候,cookie會被設置。
由於所有沒有工作(它甚至不會重定向),(不知道是否因爲jQuery移動的),並假設它當時我隔一切順利,
我所做的是此(下面)
我設置視圖完整的網站的jQuery移動內鏈接轉到這樣一個單獨的處理器頁面(等)。該處理器頁面有這個
PHP:
setcookie('dontDoMob', 'yes');
header("Location:http://www.myforecyte.com");
現在,當我檢查餅乾的東西基本是這樣的(以確保cookie中設定) PHP:
if(isset($_COOKIE['dontDoMob'])){
echo "its set yo";
} else {
echo "its not set";
}
它的工作原理,並告訴我「它的集合喲」哈哈(我不得不笑)。當我刪除所有的cookies並用螢火蟲重新測試時,它總是相應地工作。
,所以我刪除所有廢話,只是離開 PHP:
setcookie('dontDoMob', 'yes');
header("Location:http://www.myforecyte.com");
會發生什麼,之後是....好......它總是可以追溯到移動。我看到主要網站的URL秒,然後再次重定向到移動。就像cookie沒有設置一樣。
PS /提示 - 我認爲它與在全球範圍內設置cookie或類似的東西有關...不知道如何去做。該bain混亂。
Im LOST!
任何幫助,邏輯調整....任何我可以得到我謙卑的欣賞。
謝謝先進。
你好Jeztah。所以我重寫了這樣的cookie:setcookie('dontDoMob','yes',0,'/','www.myforecyte.com');並做同樣的事情。我看到主要網站的網址位仍然回到移動 – somdow 2013-03-24 18:58:50
重定向是通過PHP完成的?或者你是否嘗試使用JavaScript使用同一個cookie?如果是這樣,請確保'httponly'設置爲false。但是,我建議再次嘗試調試代碼來檢查cookie是否實際在主頁上正確讀取,並且(臨時)刪除JavaScript以縮小問題範圍 – thaJeztah 2013-03-24 19:04:09
是的,重定向和cookie設置是通過php完成的。我試過js,但它也無法正常工作。即時通訊猜測cookie不會被主頁讀取,因爲我確實看到重定向發生,但cookie,因爲它沒有讀取或保存在頁面之間,它會自動將我循環到移動頁面... – somdow 2013-03-24 19:18:09