溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php中post怎么用

發(fā)布時間:2020-10-30 10:09:18 來源:億速云 閱讀:178 作者:小新 欄目:編程語言

php中post怎么用?這個問題可能是我們?nèi)粘W習或工作經(jīng)常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家?guī)淼膮⒖純?nèi)容,讓我們一起來看看吧!

php中post方法的主要用途就是“傳遞”數(shù)據(jù),它將數(shù)據(jù)放在所有請求標題的后面上傳,使用代碼語句如“<form action=”post.php” method=”post”>...”。

$_POST數(shù)組

GET方法的本意就是下載(與其對應的是上傳方法PUT),因此并不是專門用于傳遞數(shù)據(jù)的,它將請求數(shù)據(jù)全部經(jīng)過URL編碼后綴在請求資源的后面,這樣一來,當數(shù)據(jù)很多時URL就會變得很長——但這并不是問題的所在,問題所在是一些WEB瀏覽器或服務器程序會限制這行字符串的長度。這時,就需要用到 POST方法了。

顧名思義,POST方法的主要用途就是“傳遞”數(shù)據(jù),它將數(shù)據(jù)放在所有請求標題的后面上傳,這樣一來,無論有多少數(shù)據(jù)上傳都不成問題了(這樣請求數(shù)據(jù)的大小之取決于WEB服務允許的尺寸了)。通常來說,對于表單數(shù)據(jù)如無特別需要都使用POST方法來上傳,這樣就無須去關心具體上傳數(shù)據(jù)的尺寸了。

POST方法的請求數(shù)據(jù)被封裝到了$_POST數(shù)組中,其使用方法與$_GET數(shù)組一樣。將上面的表單添加一個method屬性,就變成了這樣:

<!– post.php文件 –>
<?php
if($_POST['post']) {
foreach($_POST as $index = > $value) echo “$_POST[$index] = $value”, “<BR>”;
}
?>
<form action=”post.php” method=”post”>
<label for=”id”>賬號:</label><input type=”text” name=”id”>
<label for=”password”>密碼:</label><input type=”text” name=”password”>
<input type=”submit” name=”post” value=”提交”>
</form>

另一個有趣的設定是,GET方法和POST方法并不矛盾,在POST方法中同樣可以傳遞GET變量,將上面的post.php文件稍微改動一下,就成了這樣:

<!– post.php文件 –>
<?php
if($_POST['post']) {
foreach($_POST as $index = > $value) echo “$_POST[$index] = $value”, “<BR>”;
foreach($_GET as $index = > $value) echo “$_GET[$index] = $value”, “<BR>”;
}
?>
<form action=”post.php?act=login” method=”post”>
<label for=”id”>帳號:</label><input type=”text” name=”id”>
<label for=”password”>密碼:</label><input type=”text” name=”password”>
<input type=”submit” name=”post” value=”提交”>
</form>

該程序同時處理了GET方法(act 參數(shù))和POST方法(id 和 password 參數(shù))的請求數(shù)據(jù),GET方法的請求變量后綴在了表單action屬性值的后面,這樣只有一點問題,就是GET方法的請求變量不能由用戶來輸入。通常,固定的數(shù)據(jù)使用GET方法,由用戶輸入的數(shù)據(jù)使用POST方法來發(fā)送,兩種方法區(qū)分開了不同邏輯的數(shù)據(jù)。不過讀者在構(gòu)建這種表單的時候,一定要注意兩種方法不要有相同的變量名,否則將出現(xiàn)不可預料的后果。最后,需要注意的是,當使用GET方法發(fā)送數(shù)據(jù)時,則 <form>標簽 action 屬性值中不能包含查詢字符串(即使包含也不會生效),所以,下面的表單中,act 參數(shù)將不能發(fā)送:

<form action=”post.php?act=login” method=”get”>
<label for=”id”>賬號:</label><input type=”text” name=”id”>
<label for=”password”>密碼:</label><input type=”text” name=”password”>
<input type=”submit” name=”post” value=”提交”>
</form>

應該改成下面的形式:

<form action=”post.php” method=”get”>
<label for=”id”>賬號:</label><input type=”text” name=”id”>
<label for=”password”>密碼:</label><input type=”text” name=”password”>
<input type=”submit” name=”post” value=”提交”>
<input type=”hidden” name=”act” value=”login”>
</form>

感謝各位的閱讀!看完上述內(nèi)容,你們對php中post怎么用大概了解了嗎?希望文章內(nèi)容對大家有所幫助。如果想了解更多相關文章內(nèi)容,歡迎關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI