台灣最大程式設計社群網站
線上人數
1847
 
會員總數:246050
討論主題:189633
歡迎您免費加入會員
討論區列表 >> PHP >> 我不是很懂cookies的問題,大疑問
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
我不是很懂cookies的問題,大疑問
價值 : 50 QP  點閱數:707 回應數:6
樓主

阿醜
初學者
15 120
1250 174
發送站內信

我寫了一個很簡單的測試



這段程式我寫在function裡

這時print出來的是空值

可是在頁面跑完後,檢查是這個cookies存在.....

重點是 在跑完程式前要用到_COOKIE['lid']都是空值

這是怎麼回事

搜尋相關Tags的文章: [ php ] , [ cookie ] ,
本篇文章發表於2015-03-01 20:16
1樓
回應

香帥
檢舉此回應
用法請參考
http://www.w3school.com.cn/php/func_http_setcookie.asp
您的程式碼幫您試,是正常可以印出的喔
本篇文章回覆於2015-03-02 00:19
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
回應

clouding
捐贈 VP 給 clouding 檢舉此回應
早安
因為 print_r 是印出陣列
用 echo 或 print 即可
本篇文章回覆於2015-03-02 08:54
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
如果有chrome可以參考以下網站看cookie是否有資料
網站
其他瀏覽器應該也有相同功能
本篇文章回覆於2015-03-02 09:12
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
最有價值解答

迷路
捐贈 VP 給 迷路 檢舉此回應
因為cookie是存在客戶端的
setcookie()是發出一個要求,讓客戶端儲存cookie值,這個動作是在最後才執行的
而$_COOKIE是取得發出一個要求取得cookie值,這個動作是在一開始就執行的
所以你必須在setcookie之後重新整理畫面才能取得新值

本篇文章回覆於2015-03-02 10:30
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
回應

clouding
捐贈 VP 給 clouding 檢舉此回應
痾...
我誤會意思了
請忽略我
謝迷路大講解
本篇文章回覆於2015-03-02 10:40
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
回應

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
設定cookie及session時。在當下的程式碼堙C其_COOKIE其實還未給與值。因為_COOKIE在程式載入時已經被用全域變數的模式載入完成。
所以在該程式當下設定cookie。其實你目前取得的_COOKIE還只是舊值並未更新。
只會在下一次載入程式時才能取得正確的值。

一般正確的使用方式是先將值放入變數內。直接用變數取用會比較安全。或是用FUNCTION的方式來應用會比較好。
本篇文章回覆於2015-03-02 10:57
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.