程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> PHP頁面間傳遞值和保持值的方法

PHP頁面間傳遞值和保持值的方法

編輯:PHP綜合

一、目錄結構

二、兩次頁面間傳遞值

  在兩次頁面之間傳遞少量數據,可以使用get提交,也可以使用post提交,二者的區別恕不贅述。

  1、get提交

  使用get提交來傳遞數據,在鏈接地址中修改發送到服務器的 URL 如下所示http://www.cnblogs.com/MarkRao/p/php01.html?gName=mark&gAge=26,當然也可以在表單中設置method="get",php中接收get提交過來的數據值,使用預定義$_GET變量

  從帶有 GET 方法的表單發送的信息,對任何人都是可見的(會顯示在浏覽器的地址欄),並且對發送信息的量也有限制。

<html>
<head>
<meta charset="utf-8">
<title>get提交值</title>
</head>
<body>
<form action="getPage.php" method="get">
名字: <input type="text" name="gName">
年齡: <input type="text" name="gAge">
<input type="submit" value="提交">
</form>
</body>
</html>

  "getPage.php" 文件現在可以通過 $_GET 變量來收集表單數據了(請注意,表單域的名稱會自動成為 $_GET 數組中的鍵):

1 歡迎 <?php echo $_GET["gName"]; ?>!<br>
2 你的年齡是 <?php echo $_GET["gAge"]; ?> 歲。

  2、post提交

  使用post提交來傳遞數據,在表單中設置method="post",php中接收post提交的數據值,使用預定義$_POST變量

  從帶有 POST 方法的表單發送的信息,對任何人都是不可見的(不會顯示在浏覽器的地址欄),並且對發送信息的量也沒有限制。

  注釋:然而,默認情況下,POST 方法的發送信息的量最大值為 8 MB(可通過設置 php.ini 文件中的 post_max_size 進行更改)。

<html>
<head>
<meta charset="utf-8">
<title>post提交值</title>
</head>
<body>
<form action="postPage.php" method="post">
名字: <input type="text" name="pName">
年齡: <input type="text" name="pAge">
<input type="submit" value="提交">
</form>
</body>
</html>

  "postPage.php" 文件現在可以通過 $_POST 變量來收集表單數據了(請注意,表單域的名稱會自動成為 $_POST 數組中的鍵):

歡迎 <?php echo $_POST["pName"]; ?>!<br>
你的年齡是 <?php echo $_POST["pAge"]; ?> 歲。 

三、多個頁面之間保持值

  在多個頁面之間保持數據,可以使用session保存,也可以使用cookie保存,二者的區別恕不贅述。

  1、session保存數據

  PHP session 變量用於存儲關於用戶會話(session)的信息,或者更改用戶會話(session)的設置。Session 變量存儲單一用戶的信息,並且對於應用程序中的所有頁面都是可用的。Session 的工作機制是:為每個訪客創建一個唯一的 id (UID),並基於這個 UID 來存儲變量。UID 存儲在 cookie 中,或者通過 URL 進行傳導。

  在您把用戶信息存儲到 PHP session 中之前,首先必須啟動會話。

  注釋:session_start() 函數必須位於 <html> 標簽之前:

  存儲和取回 session 變量的正確方法是使用 PHP的$_SESSION變量:

<?php session_start();
// 存儲 session 數據
$_SESSION['viewCount']=1; 
?>
<html>
<head>
<meta charset="utf-8">
<title>session保持數據值</title>
</head>
<body>
<?php
// 取出 session 數據
echo "浏覽量:". $_SESSION['viewCount'];
?>
</body>
</html>

  2、cookie保存數據

  cookie 常用於識別用戶。cookie 是一種服務器留在用戶計算機上的小文件。每當同一台計算機通過浏覽器請求頁面時,這台計算機將會發送 cookie。通過 PHP,您能夠創建並取回 cookie 的值。

  setcookie() 函數用於設置 cookie。

  注釋:setcookie() 函數必須位於 <html> 標簽之前。

  語法如下

//name存儲的鍵名
//value存儲的鍵值
//expire存儲的超時時間
//path存儲的位置
//domain存儲區別的域名
setcookie(name, value, expire, path, domain);

  $_COOKIE 變量用於取回 cookie 的值。

<?php
// 輸出 cookie 值
echo $_COOKIE["user"]; 
// 查看所有 cookie
print_r($_COOKIE);
?>

  當刪除 cookie 時,您應當使過期日期變更為過去的時間點:

<?php
// 設置 cookie 過期時間為過去 1 小時
setcookie("user", "", time()-3600);
?>

以上所述是小編給大家介紹的PHP頁面間傳遞值和保持值的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對網站的支持!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved