十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
在php中,表单POST提交的数据是存放在$_POST变量中.$_POST变量是一个数组,它是一个以表单字段名作索引的数组.比如有以下表单:
专注于为中小企业提供网站设计、做网站服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业开福免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了成百上千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
form method="post"
p姓名:input type="text" name="name" value=""/p
p年龄:input type="text" name="age" value=""/p
pinput type="submit" value="提交"/p
/form
输入值后提交,按你的要求,在php层处理输出提交的内容,那么可以这样:
?php
echo '你的姓名是:'.$_POST['name'];//其中$_POST['name']中存放的是上面表单名为name的值
echo '你今年'.$_POST['age'].'岁';//其中$_POST['age']中存放的是上面表单名为age的值
?
如果字段内容很多,有时就可能需要循环处理.
foreach($_POST as $val){
echo $val;
}
或直接:
print_r($_POST);
当然处理或输出的格式很多,以上只是一个示例.
三中接受方式:
$_GET //get过来的数据
$_POST //post过来的数据
file_get_contents("php://input") //接口过来的xml等字符串数据用这个接
这三个方法足以接受任何数据了,具体你还要百度一下用法
1、直接file_get_contents("php://input") 这个函数就可以接到接口传参!
2、建议使用json格式数据进行交互。
PHP接收JSON格式的数据
在API服务中,目前流行采用json形式来交互。
给前端调用的接口输出Json数据,这个比较简单,只需要组织好数据,用json_encode($array) 转化一下,前端就得到json格式的数据。
接收前端提交的json数据稍微复杂一点,原因是:PHP默认识别的数据类型是application/x-标准的数据类型。因此,对型如text/xml 或者 soap 或者 application/octet-stream 和application/json格式之类的内容无法解析,如果用$_POST数组来接收就会失败!
此时可以使用$GLOBALS['HTTP_RAW_POST_DATA'] 或 file_get_contents('php://input') 来获取提交的数据
查看手册,可以发现$GLOBALS['HTTP_RAW_POST_DATA'] 和 $_POST的区别:
$_POST:通过 HTTP POST 方法传递的变量组成的数组,是自动全局变量。
$GLOBALS['HTTP_RAW_POST_DATA'] :总是产生 $HTTP_RAW_POST_DATA 变量包含有原始的 POST 数据。此变量仅在碰到未识别 MIME 类型的数据时产生。$HTTP_RAW_POST_DATA 对于 enctype="multipart/form-data" 表单数据不可用。也就是说基本上$GLOBALS['HTTP_RAW_POST_DATA'] 和 $_POST是一样的。但是如果post过来的数据不是PHP能够识别的,你可以用 $GLOBALS['HTTP_RAW_POST_DATA']来接收,比如 text/xml 或者 soap 等等。
PHP 可以通过POST、GET方法获取到表单提交的数据
获取到的POST、GET是数组形式的值,需要通过键值来详细获取相应的值
比如: index.php 页面
下面是POST方法
form name="form1" method="post" action="index.php"
input type="text" name="contents" value=""
input type="submit" value="提交"
/form
?php
//获取表单提交的数据
$contents = $_POST['contents'];
echo $contents;
?
也可以是下面是GET方法
form name="form1" method="get" action="index.php"
input type="text" name="contents" value=""
input type="submit" value="提交"
/form
?php
//获取表单提交的数据
$contents = $_GET['contents'];
echo $contents;
?
POST相对于GET方法,更好一些,可以提交大量数据,以及更安全些。
要用javascript调用php获取数据库接口,是一个很常见的前后端交互操作
通过javascript发送http请求php的API接口,php连接数据库并查询结果,最后返回出来
这样javascript就能获取到数据库的数据