백엔드 개발 PHP 튜토리얼 php $_POST获取html表单form数据教程_PHP教程

php $_POST获取html表单form数据教程_PHP教程

Jul 20, 2016 am 11:10 AM
form html method php post 변하기 쉬운 모으다 지도 시간 데이터 얻다 형태

$_POST 变量用于收集来自 method="post" 的表单中的值。从带有 POST 方法的表单发送的信息,对任何人都是不可见的(不会显示在浏览器的地址栏),并且对发送信息的量也没有限制。

先来看个最简单的实例

 代码如下 复制代码


Name:

如我输入 你好,

post.php文件代码如下

 代码如下 复制代码

You are .

输出结果就是

You are 你好

那么post如何获取像单选按钮呢,实例如下

 代码如下 复制代码


Apple

Orange

Mango


radiopost.php文件

 代码如下 复制代码

这样你选择那个就全出输那个的值,对于checkbox会有所不同,这个大家可以注意一下

 代码如下 复制代码


Apple

Orange

Mango


checkboxpost.php文件

 代码如下 复制代码

print_r($_POST['abcde']);

输出的是个数组形式了

注:
通过 HTTP POST 发送的变量不会显示在 URL 中。
变量没有长度限制。

$_POST 与 php://input可以取到值,$HTTP_RAW_POST_DATA 为空
$_POST 以关联数组方式组织提交的数据,并对此进行编码处理,如urldecode,甚至编码转换。
php://input 可通过输入流以文件读取方式取得未经处理的POST原始数据

php://input 允许读取 POST 的原始数据。和 $HTTP_RAW_POST_DATA 比起来,它给内存带来的压力较小,并且不需要任何特殊的 php.ini 设置。php://input 不能用于 enctype="multipart/form-data"。
这里拓展一下post模拟方法

 代码如下 复制代码

    $flag = 0;       
    //要post的数据        
$argv = array(       
     'var1'=>'abc',        
     'var2'=>'你好吗');        
//构造要post的字符串        
foreach ($argv as $key=>$value) {        
     if ($flag!=0) {       
             $params .= "&";        
             $flag = 1;        
     }        
     $params.= $key."="; $params.= urlencode($value);        
     $flag = 1;        
     }        
     $length = strlen($params);       
         //创建socket连接        
     $fp = fsockopen("127.0.0.1",80,$errno,$errstr,10) or exit($errstr."--->".$errno);        
     //构造post请求的头        
     $header = "POST /mobile/try.php HTTP/1.1";        
     $header .= "Host:127.0.0.1";        
     $header .= "Referer:/mobile/sendpost.php";        
     $header .= "Content-Type: application/x-www-form-urlencoded";        
     $header .= "Content-Length: ".$length."";        
     $header .= "Connection: Close";       
     //添加post的字符串        
     $header .= $params."";        
     //发送post的数据        
     fputs($fp,$header);        
     $inheader = 1;        
     while (!feof($fp)) {       
             $line = fgets($fp,1024); //去除请求包的头只显示页面的返回数据        
             if ($inheader && ($line == "n" || $line == "")) {       
                 $inheader = 0;        
             }        
             if ($inheader == 0) {        
                 echo $line;        
             }        
     }        
fclose($fp);        
?>     


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/444695.htmlTechArticle$_POST 变量用于收集来自 method="post" 的表单中的值。从带有 POST 方法的表单发送的信息,对任何人都是不可见的(不会显示在浏览器的地址栏...
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Dec 24, 2024 pm 04:42 PM

Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드

CakePHP 프로젝트 구성 CakePHP 프로젝트 구성 Sep 10, 2024 pm 05:25 PM

CakePHP 프로젝트 구성

CakePHP 날짜 및 시간 CakePHP 날짜 및 시간 Sep 10, 2024 pm 05:27 PM

CakePHP 날짜 및 시간

CakePHP 파일 업로드 CakePHP 파일 업로드 Sep 10, 2024 pm 05:27 PM

CakePHP 파일 업로드

CakePHP 라우팅 CakePHP 라우팅 Sep 10, 2024 pm 05:25 PM

CakePHP 라우팅

CakePHP 토론 CakePHP 토론 Sep 10, 2024 pm 05:28 PM

CakePHP 토론

HTML 테이블 레이아웃 HTML 테이블 레이아웃 Sep 04, 2024 pm 04:54 PM

HTML 테이블 레이아웃

PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 Dec 20, 2024 am 11:31 AM

PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법

See all articles