會話ID 和 會話變數的區別
PHP中,每次開始會話將會呼叫session_start()函式,將會檢查是否存在會話ID,如果不存在則建立一個(在初次訪問,或者長時間不訪問後,再次訪問);如果存在,則載入對應的會話變數。
第二步,註冊會話變數,根據會話ID,註冊會話變數。比如使用者使用ID:1(實際上是隨機編碼,沒這麼簡單的)訪問伺服器,並且通過了登陸介面,伺服器分配給此ID一個會話變數user1。
第三步,訪問其他網頁,每個網頁的開頭都要檢查使用者ID及會話變數,保證是同一個使用者。
第四步,清除會話變數,再清除會話ID。
問:為什麼使用會話ID又使用會話變數?
答:使用會話ID是保證,是同一臺客戶端在訪問;但是這還不夠,伺服器還需要知道這個客戶端的使用者,所以使用會話變數,關聯此ID。
有人又會問,那麼在使用者登入之後,我就用判斷此ID來判斷是不是同一個使用者呀?正解,你那什麼判斷是同一個使用者,是不是比如說用一個數組,key是使用者名稱字,而value是ID? 哈哈,會話變數的效果是key是ID value是使用者名稱。效果不是一樣的嘛?
就是這樣的!
相關推薦
會話ID 和 會話變數的區別
PHP中,每次開始會話將會呼叫session_start()函式,將會檢查是否存在會話ID,如果不存在則建立一個(在初次訪問,或者長時間不訪問後,再次訪問);如果存在,則載入對應的會話變數。 第二步,註冊會話變數,根據會話ID,註冊會話變數。比如使用者使
id和class的區別
xhtml 特殊符號 好的 web 沒有 定義 開頭 數字 推薦 id和class沒有本質上的區別,很多時候可以混用(XHTML不允許,但是也不會報錯)。但符合web標準的頁面必須結構良好,有語義,有可讀性,所以為了養成良好的代碼編寫習慣,建議讀者嚴格區分。同樣的i
spring中的Bean的id和name的區別
spring中的Bean的id和name的區別 2017年10月01日 18:23:59 冰河家園 閱讀數:296 標籤: spring 更多 個人分類: spring Spring中Bean的命名 1、每個Bean可以有一個id屬性,並可以根據該id在IoC容器中查詢該Bean
python下,類物件和例項物件區別,類變數和例項變數區別
Y14 一、類物件和例項物件 簡短理論: 類物件是將具有相似屬性和方法的物件總結抽象為類物件,可以定義相似的一些屬性和方法,不同的例項物件去引用類物件的屬性和方法,能減少程式碼的重複率。 例項物件又稱例項化物件,不是抽象而是一類物件中具體的一例物件。 比
【Html】在表單(input)中id和name的區別
但是name在以下用途是不能替代的: 1. 表單(form)的控制元件名,提交的資料都用控制元件的name而不是id來控制。因為有許多name會同時對應多個控制元件,比如checkbox和radio,而id必須是全文件中唯一的。此外瀏覽器會根據name來設定傳送到伺服器的r
Spring配置檔案定義類時用id和name的區別
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3
臨時表和表變數區別,SQL Server裡的檢視和臨時表在哪裡?
臨時表與永久表相似,但臨時表儲存在 tempdb 中,當不再使用時會自動刪除。 臨時表有兩種型別:本地和全域性。它們在名稱、可見性以及可用性上有區別。本地臨時表的名稱以單個數字元號 (#) 打頭;它們僅對當前的使用者連線是可見的;當用戶從 SQL Server 例項斷開連
融雲集成2--使用者資訊在會話列表和會話介面的顯示
使用者資訊(頭像)如何重新整理? 為什麼呼叫 refreshUserInfoCache,有的頭像重新整理了,有的沒有。 回答: 融雲有兩種顯示使用者資訊的方式,一種是給需要註冊的 app 使用的,就是 setUserInfoProvider,所
css中id和class 的區別
ID與Class區別,新手的我對此非常迷茫,不知道什麼時候該用id,什麼時候該用class。經過學習,我總結如下: 一、在web標準中是不容許重複ID的,例如 div id=
html裡name、id和class的區別
在一個頁面中,有許多的控制元件(元素或標籤)。為了更方便的操作這些標籤,就需要給這些標籤標識一個身份牌。 目錄 1. name :指定標籤的名稱。 2. id :指定標籤的唯一標識。 3. class :指定標籤的類名。 1. name 指定標籤的名稱。
spring配置檔案中Bean中的id和name的區別
1.id屬性命名必須滿足XML的命名規範,因為id其實是XML中就做了限定的。總結起來就相當於一個Java變數的命名:不能以數字,符號打頭,不能有空格,如123,?ad,"ab "等都是不規範的,Spring在初始化時就會報錯,諸如: 程式碼 org
html標籤中id和name的區別
細說HTML元素的ID和Name屬性的區別可以說幾乎每個做過Web開發的人都問過,到底元素的ID和Name有什麼區別阿?為什麼有了ID還要有Name呢?! 而同樣我們也可以得到最classical的答案:ID就像是一個人的身份證號碼,而Name就像是他的名字,ID顯然是唯一的,而Name是可以重複的。上週我也
轉載 web中 id 和name的區別
otto 表單 alert 所有 tel nbsp 有關 end msdn 做網站很久了,但到現在還沒有搞明白input中name和id的區別,最近學習jquery,又遇到這個問題,就在網上搜集資料。看到這篇,就整理出來,以備後用。 可以說幾乎每個做過Web開發的人都問過
會話和事務的區別
http://blog.csdn.net/jiankunking/article/details/23818743一個會話可以啟動多個事務,會話是session,指一次連線。 事務是指一個操作單元,要麼成功,要麼失敗,沒有中間狀態。 會話中可以完成
MySQL 會話變數 和 系統變數
MySQL會話變數 和 系統變數@@ 1、當伺服器執行時很多的變數可以動態改變。 2、客戶端只能更改自己的會話變數,不能更改其他客戶端的會話變數,退出客戶端時變數復原,並且不會影響其他客戶端,系統 變數影響全域性。 3、伺服器啟動時,將全域性變數初始化為預設值,這些預設值可以在配置檔案或命令列中更改。想要更
Android @id和@+id區別
文件 int 十六進制 存在 變量 android中 target r.java文件 需要 Android中的組件需要用一個int類型的id屬性值來表示。id屬性只能接受資源類型的值,也就是必須以@開頭的值,例如,@id/abc、@+id/xyz等。如果在@後面使用“+
python網絡編程,通過服務名稱和會話類型(tcp,udp)獲取端口號,簡單的異常處理
one span try num python網絡 int 代碼 sys.argv 通過 作為一個php程序員,同時有對網絡方面感興趣,php就比較蛋疼了,所以就抽了些時間看python 之前學python基礎因為工作原因,斷斷續續的看了個基礎,差不多是可以寫代碼了 最近在
Android查缺補漏(View篇)--布局文件中的“@+id”和“@id”有什麽區別?
新增 布局 parent 直接 使用 margin 移除 控件 Coding Android布局文件中的“@+id”和“@id”有什麽區別? +id表示為控件指定一個id(新增一個id),如: <cn.codingblock.view.customer_view.
LVS的持久連接、會話保持和高可用介紹
html中 net fail index 方案 persist sin 成功 pcc 持續連接 1)持久連接(lvs persistence)模板: 實現無論使用任何調度算法,在一段時間內(默認360s),能夠實現將來自同一個地址的請求始終發往同一個
input通過id的賦值 js jquery innerHTML和outerHTML 的區別
outerhtml con ace har 內容 doc 技術分享 pos gif 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf