首頁 >後端開發 >php教程 >實例詳解PHP中 $_POST的$_GET的用法與區別

實例詳解PHP中 $_POST的$_GET的用法與區別

王林
王林轉載
2020-08-17 17:28:164389瀏覽

實例詳解PHP中 $_POST的$_GET的用法與區別

post和get是指頁面提交的兩種方式。

(推薦教學:php實戰影片教學

get:參數都體現在url上,可以用於翻頁,簡單查詢,get只能接收2M以下的內容,所以有局限性,另外由於內容是可見的,安全性就下降了。

post:用於頁面表單提交,上傳檔案。大小沒有限制,也不會在網址列上顯示。

$_POST 變數

$_POST 變數是一個數組,內容是由 HTTP POST 方法傳送的變數名稱和值。

$_POST 變數用於收集來自 method=”post” 的表單中的值。
從帶有 POST 方法的表單發送的訊息,對任何人都是不可見的(不會顯示在瀏覽器的網址列),並且對發送訊息的量也沒有限制。

範例:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title></title>
    </head>
    <body>
<form action="http://127.0.0.1:8080/php7/hello.php" method="post">
    
Enter your name: <input type="text" name="name" />
Enter your age: <input type="text" name="age" />
<input type="submit" />
</form>

    </body>
</html>

這裡是hello.php檔案的程式碼   「hello.php」 檔案現在可以透過$_POST 變數來取得表單資料了(請注意,表單網域的名稱會自動成為$_POST 陣列中的ID 鍵)

<?php
header("content-type:text/html;charset=utf-8");
echo  $_POST["name"];
//可以输出form中标签的属性值   其中参数的name
echo $_POST["age"];
?>

為什麼要使用$_POST?

  • 透過 HTTP POST 傳送的變數不會顯示在 URL 中。

  • 變數沒有長度限制。

不過,因為變數不會顯示在 URL 中,所以無法將頁面加入書籤。

$_GET 變數

$_GET 變數用於收集來自method=”get” 的表單中的值,直覺的的是瀏覽器中可以看到的參數,例如我在百度搜尋「wordpress」的時候,我請求的url就是http://www.baidu.com/s?ie=utf-8&bs=wordpress&f=8&rsv_bp=1&wd=wordpress&inputT=0,那麼'?'後面的參數都是可以用$_GET 獲取,各個參數是以'&'作為分隔符號的。

$_GET 變數是一個數組,內容是由 HTTP GET 方法傳送的變數名稱和值。

從帶有GET 方法的表單發送的訊息,對任何人都是可見的(會顯示在瀏覽器的網址列),並且對發送的信息量也有限制(最多100 個字元),所以參數的長度不是無限的,但是基本上都能滿足我們的要求了。

範例:

<form action="hello.php" method="get">
Name: <input type="text" name="name" />
Age: <input type="text" name="age" />
<input type="submit" /></form>

當使用者點擊提交按鈕時,發送的URL 會類似這樣:

http://www.w3school.com.cn/welcome.php?name=Peter&age=37

「hello.php」 檔案現在可以透過$_GET 變數來取得表單資料了(請注意,表單域的名稱會自動成為$_GET 數組中的ID 鍵)

Welcome <?php echo $_GET["name"]; ?>.<br />
You are <?php echo $_GET["age"]; ?> years old!

如果你在name 表單框中輸入了Mike ,在age 表單框中輸入了23,那麼顯示的結果就是這樣的。

Welcome Mike 
You are 23 years old!

為什麼要使用 $_GET?

註解:在使用 $_GET 變數時,所有的變數名稱和值都會顯示在 URL 中。所以在發送密碼或其他敏感資訊時,不應該使用這個方法。

不過,正因為變數顯示在 URL 中,因此可以在收藏夾中收藏該頁面。在某些情況下,這是很有用的。

註解:HTTP GET 方法不適合大型的變數值;值是不能超過 100 個字元的。

以上是實例詳解PHP中 $_POST的$_GET的用法與區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:cnblogs.com。如有侵權,請聯絡admin@php.cn刪除