在兩次頁面之間傳遞少量數據,可以使用get提交,也可以使用post提交,二者的區別恕不贅述。
使用get提交來傳遞數據,在鏈接地址中修改發送到服務器的 URL 如下所示http://www.cnblogs.com/MarkRao/p/php01.html?gName=mark&gAge=26
,當然也可以在表單中設置method="get",php中接收get提交過來的數據值,使用預定義$_GET變量
從帶有 GET 方法的表單發送的信息,對任何人都是可見的(會顯示在浏覽器的地址欄),並且對發送信息的量也有限制。
1 <html> 2 <head> 3 <meta charset="utf-8"> 4 <title>get提交值</title> 5 </head> 6 <body> 7 8 <form action="getPage.php" method="get"> 9 名字: <input type="text" name="gName"> 10 年齡: <input type="text" name="gAge"> 11 <input type="submit" value="提交"> 12 </form> 13 14 </body> 15 </html>
"getPage.php" 文件現在可以通過 $_GET 變量來收集表單數據了(請注意,表單域的名稱會自動成為 $_GET 數組中的鍵):
1 歡迎 <?php echo $_GET["gName"]; ?>!<br> 2 你的年齡是 <?php echo $_GET["gAge"]; ?> 歲。
使用post提交來傳遞數據,在表單中設置method="post",php中接收post提交的數據值,使用預定義$_POST變量
從帶有 POST 方法的表單發送的信息,對任何人都是不可見的(不會顯示在浏覽器的地址欄),並且對發送信息的量也沒有限制。
注釋:然而,默認情況下,POST 方法的發送信息的量最大值為 8 MB(可通過設置 php.ini 文件中的 post_max_size 進行更改)。
1 <html> 2 <head> 3 <meta charset="utf-8"> 4 <title>post提交值</title> 5 </head> 6 <body> 7 8 <form action="postPage.php" method="post"> 9 名字: <input type="text" name="pName"> 10 年齡: <input type="text" name="pAge"> 11 <input type="submit" value="提交"> 12 </form> 13 14 </body> 15 </html>
"postPage.php" 文件現在可以通過 $_POST 變量來收集表單數據了(請注意,表單域的名稱會自動成為 $_POST 數組中的鍵):
1 歡迎 <?php echo $_POST["pName"]; ?>!<br> 2 你的年齡是 <?php echo $_POST["pAge"]; ?> 歲。
在多個頁面之間保持數據,可以使用session保存,也可以使用cookie保存,二者的區別恕不贅述。
PHP session 變量用於存儲關於用戶會話(session)的信息,或者更改用戶會話(session)的設置。Session 變量存儲單一用戶的信息,並且對於應用程序中的所有頁面都是可用的。Session 的工作機制是:為每個訪客創建一個唯一的 id (UID),並基於這個 UID 來存儲變量。UID 存儲在 cookie 中,或者通過 URL 進行傳導。
在您把用戶信息存儲到 PHP session 中之前,首先必須啟動會話。
注釋:session_start() 函數必須位於 <html> 標簽之前:
存儲和取回 session 變量的正確方法是使用 PHP的$_SESSION變量:
1 <?php session_start(); 2 // 存儲 session 數據 3 $_SESSION['viewCount']=1; 4 ?> 5 6 <html> 7 <head> 8 <meta charset="utf-8"> 9 <title>session保持數據值</title> 10 </head> 11 <body> 12 13 <?php 14 // 取出 session 數據 15 echo "浏覽量:". $_SESSION['viewCount']; 16 ?> 17 18 </body> 19 </html>
cookie 常用於識別用戶。cookie 是一種服務器留在用戶計算機上的小文件。每當同一台計算機通過浏覽器請求頁面時,這台計算機將會發送 cookie。通過 PHP,您能夠創建並取回 cookie 的值。
setcookie() 函數用於設置 cookie。
注釋:setcookie() 函數必須位於 <html> 標簽之前。
語法如下
1 //name存儲的鍵名 2 //value存儲的鍵值 3 //expire存儲的超時時間 4 //path存儲的位置 5 //domain存儲區別的域名 6 setcookie(name, value, expire, path, domain);
$_COOKIE 變量用於取回 cookie 的值。
1 <?php 2 // 輸出 cookie 值 3 echo $_COOKIE["user"]; 4 5 // 查看所有 cookie 6 print_r($_COOKIE); 7 ?>
當刪除 cookie 時,您應當使過期日期變更為過去的時間點:
1 <?php 2 // 設置 cookie 過期時間為過去 1 小時 3 setcookie("user", "", time()-3600); 4 ?>
ok,到此結束!