2014-10-11 108 views
0

這個php代碼在做什麼?

$_SESSION['box_status'] = $_POST['box_status']; 

是它創建一個數組或什麼?我失去了,或者只是把一個字符串值,並將其存儲,或將其存儲多個值作爲追加?

據我所知,它只是創建一個字符串功能。

+1

它存儲$ _POST IN $ _SESSION的值,所以它可以在任何頁面中使用。在使用session_start()之後;希望它解釋一些東西 – 2014-10-11 07:48:51

+0

它只是在會話cookie中存儲'$ _POST ['box_status']''。 – 2014-10-11 07:49:11

+0

@AziBaloch它被稱爲會話_variable _... cookie是一個完全不同的東西 – webeno 2014-10-11 07:52:48

回答

2

你代碼將$_SESSION['box_status']的值設置爲當前值$_POST['box_status']

$_POST$_SESSION是PHP中的保留變量;它們分別存儲來自POST操作和會話數據的數據。它們都是關聯數組,這就是它們使用$array['key']格式的原因。

0

取決於POST中發送的值(例如,從頁面上的web表單發送)。

如果字符串變量後「box_status」,那麼如果你發送陣列節省陣列節省串入SESSION變量「box_status」 ..

一個重要的說明是,你應該序列化/清潔POST值保存在SESSION中之前

0

$_POST$_SESSION是PHP中的兩個非常特殊的數組。

$_POST數組將包含所有發送給它的數據

<form name='someName' action='thisPage.php' method='POST'> 
... 
<input type='text' name='someInput'... 
... 
</form> 

發送此表單會將您帶到'thisPage.php'頁面。在'thisPage.php'裏面,如果你要訪問$_POST['someInput'],那會給你放置在名爲'someInput'的文本框內的值。

PHP會話基本上是一種在用戶繼續瀏覽頁面時在服務器上存儲有關用戶的信息的方式。這是保持用戶在網站上登錄的一種方式。

會話必須以session_start()呼叫開始。一旦發生這種情況,PHP會檢查客戶端的計算機是否有會話ID,並提取該id唯一的會話變量(好吧,這只是簡單的說明,如果您好奇,請隨時向Google尋求更多明確的信息) 。

不管怎麼說,通過設置$_SESSION['box_status'] = $_POST['box_status'];,你說,「無論通過POST數據在某些輸入發送到我的用戶稱爲‘box_status’,我要保留價值的軌道,因爲他們繼續瀏覽我的網站。」

我當然在這裏概括一些東西,但你應該明白這一點。

0

從PHP頁面&您存儲在PHP的會話您box_status數據@voyeger

根據你的代碼,你必須張貼您的數據(即box_status)。(即$_SESSION['box_status'] = $_POST['box_status'])。

基本上會話是一種存儲跨多個php頁面使用的信息(變量)的方式。

與Cookie不同,信息不存儲在用戶計算機上,它存儲在服務器上。

因此,您可以使用<?php echo $_SESSION['box_status']; ?>將box_status數據打印到任何PHP頁面。

不要忘記在打印box_status數據之前開始會話(即session_start();)。