[英]data between pages: $_SESSION vs. $_GET?
好的,首先,這不是關於表單,這是關於用戶瀏覽網站時的一致布局。
讓我解釋:
如果我們想象一個(非ajax)數碼相機在線商店,說有人在DSLR部分並指定以圖庫模式查看相機並按價格訂購。 然后他們點擊Compact相機的頁面。 如果他們選擇的“觀點”我們被轉移到這個新頁面,那將符合用戶的利益。
現在,我要說使用會話 - 我錯了嗎?
我是否應該注意一些小會話變量的性能問題(即view = 1,orderby = price)?
說到表演,兩種解決方案都不應該有太多問題。
有些事情需要考慮:
我會說兩者同時使用。 將其存儲在會話中,但也將其放在頁面的get參數中。
為什么? 通過這種方式,用戶可以在頁面之間攜帶他的選項,但是他們也在URL中,因此如果他將搜索結果發送給他的朋友,他的朋友就會以與他完全相同的方式看待他們。
不,通過將那些小變量放在那里,會話的性能不會降低。 除非您在會話中存儲單片數組,否則加載會話的絕大部分時間都將從其存儲介質(文件,數據庫,內存緩存等)中讀取它。
你應該在你的情況下使用GET。
Web開發中有一個簡單的規則:每個包含不同內容的頁面都必須擁有自己的地址。 因此,客戶可以將任何頁面保存到收藏夾中,然后將其發送到frend。 在底部是痛苦的,然后有人向您發送指向特定頁面的鏈接,說“看!” 但網站使用框架,你登陸首頁,不知道在哪里看。
您可以將用戶的偏好保存到他的個人資料/ cookie(不是會話)中,但也應該反映在地址欄中。
用於完全不同目的的會話,購物車就是一個例子。
這是一個主觀問題,無論哪種方式都可以。
我個人會選擇會話,因為它不會干擾URL,所以人們可以根據需要為網址添加書簽。
然而,對於那個問題的論點是,如果它們為它添加了書簽,如果使用$ _SESSION完成,它們可能會看到不同的內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.