你好,一般瀏覽器的請(qǐng)求分為GET和POST,PHP處理兩種請(qǐng)求的方式如下:
創(chuàng)新互聯(lián)專(zhuān)注于云浮網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供云浮營(yíng)銷(xiāo)型網(wǎng)站建設(shè),云浮網(wǎng)站制作、云浮網(wǎng)頁(yè)設(shè)計(jì)、云浮網(wǎng)站官網(wǎng)定制、小程序制作服務(wù),打造云浮網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供云浮網(wǎng)站排名全網(wǎng)營(yíng)銷(xiāo)落地服務(wù)。
GET,一般是明文的,比如XXX.php?a=1b=2,這里的a,b就必須用GET方式接收,接收代碼如下:
$a = $_GET['a'];
$b = $_GET['b'];
//接收a,b兩個(gè)變量
POST,一般是隱藏的非明文的,一般表單設(shè)置成POST的,接收方式如下:
//比如有個(gè)表單,表單中有兩個(gè)文本框,name 分別是 a,b,那么代碼如下:
$a = $_POST['a'];
$b = $_POST['b'];
另外:$_REQUEST,可以同時(shí)接收GET、POST的變量,用法如:
$_REQUEST['a'];//接收變量a,a可以是GET的也可以是POST的
POST都是以key-value的形式傳過(guò)來(lái)的。所以分兩種情況:
如果事先知道key,可以用$_POST['your_key']取到值。
如果事先不知道key,可以遍歷$_POST變量:
foreach($_POST as $key=$val) {
echo $key.": ".$val."br\n";
}
form表單demo:task.html
fieldset id="setFiled"
legend發(fā)布任務(wù)/legend
form action="registr.php" method="post" id="steForm"
label任務(wù)類(lèi)型:/labelbr
input type="text" name="type"? id="taskType" placeholder="請(qǐng)選擇任務(wù)類(lèi)型"/br
label酬nbsp;nbsp;金:/labelbr
input type="number" name="money" id="forMoney" min="1" max="1000"/label元/labelbr
label截止時(shí)間:/labelbr
input type="datetime" name="time" id="timeSubmit"/span data-year="" data-month="" data-date="" id="showDate"/spanbr
label詳細(xì)描述:/labelbr
textarea maxlength="512" name="textAray" id="msgArea"/textareabr
input type="submit" name="subMit" id="forSub" value="點(diǎn)擊發(fā)布" /
/form
擴(kuò)展資料
php接收POST數(shù)據(jù)的三種方式
1、$_POST 方式接受數(shù)據(jù)
$_POST 方式是由通過(guò)HTTP的POST方法傳遞過(guò)來(lái)的數(shù)據(jù)組成的數(shù)組,是一個(gè)自動(dòng)全局變量。
注:只能接收Content-Type:application/x-www-form-urlencode提交的數(shù)據(jù)。也就是只能接收表單過(guò)來(lái)的數(shù)據(jù)。
2、GLOBLES[‘HTTP_RAW_POST_DATA’]
如果訪(fǎng)問(wèn)原始POST數(shù)據(jù)不是php能夠識(shí)別的文檔類(lèi)型,比如:text/xml 或者soap等等,可以用$GLOBLES[‘HTTP_RAW_POST_DATA’]來(lái)接收,$HTTP_RAW_POST_DATA變量包含有原始POST數(shù)據(jù)。此變量?jī)H在碰到未識(shí)別的MIME數(shù)據(jù)時(shí)產(chǎn)生。
注:$HTTP_RAW_POST_DATA對(duì)于enctype=”multipart/form-data”表單數(shù)據(jù)不可用,也就是說(shuō)使用$HTTP_RAW_POST_DATA無(wú)法接受網(wǎng)頁(yè)表單post過(guò)來(lái)的數(shù)據(jù)。
3、file_get_contents(“php://input”);
如果訪(fǎng)問(wèn)原始POST數(shù)據(jù),更好的方法是使用file_get_content(“php://input”);對(duì)于未指定Content-Type的POST數(shù)據(jù),可以使用該方法讀取POST原始數(shù)據(jù),包括二進(jìn)制流也可以和$HTTP_RAW_POST_DATA比起來(lái)。它帶來(lái)的生存眼里更小,并且不需要任何特殊的php.ini設(shè)置。
注:php://input不能用于 enctype=”multipart/form-data”
例如:$postStr = file_get_contents("php://input"); //獲取POST數(shù)據(jù)