php獲取表單數據
『壹』 php表單怎樣提交到當前頁面,並用$_POST獲取其值
按照這樣輸入:
<?php
$username=$_POST['username'];
?>
<form action="" ><input type="text" name="username"><input type="submit" name="submit" value="提交"></form>
『貳』 php 怎麼POST獲取數據
方法1、最常見的方法是:$_POST['fieldname'];
說明:只能接收Content-Type: application/x-www-form-urlencoded提交的數據
解釋:也就是表單POST過來的數據
方法2、file_get_contents("php://input");
說明:
允許讀取 POST 的原始數據。
和 $HTTP_RAW_POST_DATA 比起來,它給內存帶來的壓力較小,並且不需要任何特殊的 php.ini 設置。
php://input 不能用於 enctype="multipart/form-data"。
解釋:
對於未指定 Content-Type 的POST數據,則可以使用file_get_contents(「php://input」);來獲取原始數據。
事實上,用PHP接收POST的任何數據都可以使用本方法。而不用考慮Content-Type,包括二進制文件流也可以。
所以用方法二是最保險的方法
方法3、$GLOBALS['HTTP_RAW_POST_DATA'];
說明:
總是產生 $HTTP_RAW_POST_DATA 變數包含有原始的 POST 數據。
此變數僅在碰到未識別 MIME 類型的數據時產生。
$HTTP_RAW_POST_DATA 對於 enctype="multipart/form-data" 表單數據不可用
如果post過來的數據不是PHP能夠識別的,可以用 $GLOBALS['HTTP_RAW_POST_DATA']來接收,
比如 text/xml 或者 soap 等等
解釋:
$GLOBALS['HTTP_RAW_POST_DATA']存放的是POST過來的原始數據。
$_POST或$_REQUEST存放的是 PHP以key=>value的形式格式化以後的數據。
但$GLOBALS['HTTP_RAW_POST_DATA']中是否保存POST過來的數據取決於centent-Type的設置,即POST數據時 必須顯式示指明Content-Type: application/x-www-form-urlencoded,POST的數據才會存放到 $GLOBALS['HTTP_RAW_POST_DATA']中
『叄』 php 如何獲取file表單中的本地路徑(file表單中的值)
1.這是你通過:$_FILES可以取到的所有的值:
echo
"<pre>";
print_r($UploadedFile);
echo
"</pre>";2.如果你是要取表單UploadedFile的值,可以通過變通的方式,js去處理,如觸發瀏覽按扭或上傳按扭的時候,將其寫入到別一個隱藏域,再提交就可以了。
『肆』 浣跨敤php璇誨彇post璇鋒眰浼犻掔殑琛ㄥ崟鏁版嵁,姝g『鐨勬槸
浣跨敤php璇誨彇post璇鋒眰浼犻掔殑琛ㄥ崟鏁版嵁,姝g『鐨勬槸浠ヤ笅涓夌嶆柟娉曪細
1銆$_POST銆$_POST鎴$_REQUEST瀛樻斁鐨勬槸PHP浠key=>value鐨勫艦寮忔牸寮忓寲浠ュ悗鐨勬暟鎹銆
2銆佷嬌鐢╢ile_get_contents(鈥減hp://input鈥)銆傚逛簬鏈鎸囧畾Content-Type鐨凱OST鏁版嵁錛屽垯鍙浠ヤ嬌鐢╢ile_get_contents(鈥減hp://input鈥)鏉ヨ幏鍙栧師濮嬫暟鎹銆
3銆佷嬌鐢ㄥ叏灞鍙橀噺$GLOBALS[鈥楬TTP_RAW_POST_DATA']鍦$GLOBALS[鈥楬TTP_RAW_POST_DATA']瀛樻斁鐨勬槸POST榪囨潵鐨勫師濮嬫暟鎹銆
『伍』 PHP怎麼獲取表單中的多條數據
在生成的表單元素以及之前的元素的名字加上中括弧即可實現
比如: name="contents" => name="contents[]",最後提交獲取到的數據是一個數組形式的。
代碼如下:
<form name="form1" method="post" action="index.php?action=ok">
1.<input type="text" name="contents[]" value="">
2.<input type="text" name="contents[]" value="">
3.<input type="text" name="contents[]" value="">
<input type="submit" value="提交">
</form>
<?php
if($_GET['action'] == 'ok'){
$contents = $_POST['contents'];
print_r($contents);
}
?>
得到的數據是數組形式的,遍歷即可。