当前位置:首页 » 编程语言 » phppost获取数据

phppost获取数据

发布时间: 2022-12-31 11:11:35

‘壹’ 关于php中POST传递参数问题

将数据转换成 json 格式的字符串, 并通过 CURL 的 POST 的形式传递参数给服务端, 但是在服务端无法用 $_POST 获取到数据。后台用 $_POST 获取到的信息为空, 但是可以通过 $post = file_get_contents("php://input") 获取到请求的相关信息。

Coentent-Type 的值为 application/x-www-data-urlencode 和 multipart/form-data 时, php才会将http请求数据包中的数据填进 $_POST 。

如果 POST 的原始数据是一维数组或&拼接的标准格式的键值对字符串,那么可以用 $_POST 来获取。
如果要通过 file_get_contents 获取,这种情况下可以发送 json 字符串,用 json_encode 编码转换一下,或者使用 http_build_query 。

1、 区别 PHP 的 $_POST、$HTTP_RAW_POST_DATA 和 php://input
2、 accept 和 content-Type区别
3、 Http Header里的Content-Type

‘贰’ php如何接收别的服务器post过来的数据 - 技术问答

通常情况下用户使用浏览器网页表单向服务器post提交数据,我们使用PHP的$_POST接收用户POST到服务器的数据,并进行适当的处理。但有些情况下,如用户使用客户端软件向服务端php程序发送post数据,而不能用$_POST来识别,那又该如何处理呢?
我们介绍php接受post数据的三种方式:
1.$_POST方式接收数据
$_POST方式是通过 HTTP POST 方法传递的变量组成的数组,是自动全局变量。如使用$_POST[‘name’]就可以接收到网页表单以及网页异步方式post过来的数据,
即$_POST只能接收文档类型为Content-Type: application/x-www-form-urlencoded提交的数据,也就是表单POST过来的数据。
2.$GLOBALS[‘HTTP_RAW_POST_DATA’]方式接收数据
但$GLOBALS[‘HTTP_RAW_POST_DATA’]中是否保存POST过来的数据取决于centent-Type的设置,只有在PHP在无法识别的Content-Type的情况下,才会将POST过来的数据原样地填入变量$GLOBALS[‘HTTP_RAW_POST_DATA’]中,像Content-Type=application/x-www-form-urlencoded时,该变量是空的。
另外,它同样无法读取Content-Type为multipart/form-data的POST数据,也需要设置php.ini中的always_populate_raw_post_data值为On,PHP才会总把POST数据填入变量$http_raw_post_data。
3.php://input方式接收数据
如果访问原始 POST 数据的更好方法是 php://input。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,包括二进制文件流也可以。php://input读取不到$_GET数据。是因为$

‘叁’ 关于php获取post值的问题!

在php的配置文件里,有一个开关叫做:register_globals,如果是on,则post提交以后,直接用$字段,就可以取到post的值了,出于安全性考虑,这个开关在新版的php里默认是关闭的,当这个开关是关闭的时候,你可以用以下的代码来模拟这个效果:
if(!ini_get('register_globals')){
extract($_POST);
extract($_GET);
}

‘肆’ 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,包括二进制文件流也可以。
所以用方法二是最保险的方法

‘伍’ php模拟post请求,获取不到数据

这个问题我没见过,很感兴趣
类似的问题我见过一些。您是不是还上传了什么东西,然后请你把上传上限复原,如果就是两个字符串的话不用那么大。如果提示你大小出现问题就是别的问题了
修改配置的话,记得重启Apache
然后我的解决方法就是,把代码删除,重打一遍
只是传两个字符串我不信不好使
还有一个很恶心的问题,缓存
如果再不行就去重新建一个文件测试下。

‘陆’ php中Get方法跟Post方法的区别

php中Get方法跟Post方法的区别

php——get方法

这个方法用来获取私有成员属性值的,有一个参数,参数传入你要获取的成员属性的名称,返回获取的属性值,这个方法不用手工的去调用,因为也可以把这个方法做成私有的方法,是在直接获取私有属性的时候对象自动调用的。

因为私有属性已经被封装上了,是不能直接获取值的,但是如果你在类里面加上了这个方法,在使用“echo$p1->name”这样的语句直接获取值的时候就会自动调用__get($name)方法,将属性name传给参数$name,通过这个方法的内部执行,返回传入的.私有属性的值。

如果成员属性不封装成私有的,对象本身就不会去自动调用这个方法。

php——post方法

这个方法用于传送数据,用法与get方法类似,但有区别。

区别

Get方法在超链接后边紧跟要传递的参数对于用户是可见的如:%D6%A3%D6%DD%B4%F3%D1%A7&fr=index&ie=utf-8

而Post方法传递的参数是不可见的。

GET是从服务器上获取数据;POST是向服务器传送数据。

在客户端,GET通过URL提交数据,数据在URL中可见;POST把数据放在form的数据体内提交。

GET提交的数据最多只有1024字节;POST提交的数据量无限制。

由于使用GET时,参数会显示在地址栏上,而POST不会,所以,如果这些数据是非敏感数据,那么使用GET;如果包含敏感数据,为了安全,用POST方法。

;

‘柒’ php函数里面怎么获取post过来的值

使用$_POST获取post得到的值。

$post_data=$_POST;//获取所有的POST数据,是一个数组
$field=$_POST['name'];//根据html中的name值得到某一项具体的值

‘捌’ php 接收到之后post数据写入数据库

form表单demo:task.html

<fieldset id="setFiled">

<legend>发布任务</legend>

<form action="registr.php" method="post" id="steForm">

<label>任务类型:</label><br>

<input type="text" name="type" id="taskType" placeholder="请选择任务类型"/><br>

<label>酬&nbsp;&nbsp;金:</label><br>

<input type="number" name="money" id="forMoney" min="1" max="1000"/><label>元</label><br>

<label>截止时间:</label><br>

<input type="datetime" name="time" id="timeSubmit"/><span data-year="" data-month="" data-date="" id="showDate"></span><br>

<label>详细描述:</label><br>

<textarea maxlength="512" name="textAray" id="msgArea"></textarea><br>

<input type="submit" name="subMit" id="forSub" value="点击发布" />

</form>

(8)phppost获取数据扩展阅读

php接收POST数据的三种方式

1、$_POST 方式接受数据

$_POST 方式是由通过HTTP的POST方法传递过来的数据组成的数组,是一个自动全局变量。

注:只能接收Content-Type:application/x-www-form-urlencode提交的数据。也就是只能接收表单过来的数据。

2、GLOBLES[‘HTTP_RAW_POST_DATA’]

如果访问原始POST数据不是php能够识别的文档类型,比如:text/xml 或者soap等等,可以用$GLOBLES[‘HTTP_RAW_POST_DATA’]来接收,$HTTP_RAW_POST_DATA变量包含有原始POST数据。此变量仅在碰到未识别的MIME数据时产生。

注:$HTTP_RAW_POST_DATA对于enctype=”multipart/form-data”表单数据不可用,也就是说使用$HTTP_RAW_POST_DATA无法接受网页表单post过来的数据。

3、file_get_contents(“php://input”);

如果访问原始POST数据,更好的方法是使用file_get_content(“php://input”);对于未指定Content-Type的POST数据,可以使用该方法读取POST原始数据,包括二进制流也可以和$HTTP_RAW_POST_DATA比起来。它带来的生存眼里更小,并且不需要任何特殊的php.ini设置。

注:php://input不能用于 enctype=”multipart/form-data”

例如:$postStr = file_get_contents("php://input"); //获取POST数据

‘玖’ PHP获取POST数据的几种方法

1、直接获取所有传递
$username = $_REQUEST['username'];
2、只获取POST提交的
$username = $_POST['username']

热点内容
甘蔗苗存储 发布:2025-07-01 21:47:03 浏览:665
选定文件夹 发布:2025-07-01 21:45:14 浏览:227
数据库或且 发布:2025-07-01 21:40:54 浏览:998
pythoneve 发布:2025-07-01 21:33:49 浏览:143
解压玩具怎么做只用水就可以做 发布:2025-07-01 20:52:56 浏览:162
解压放松室 发布:2025-07-01 20:52:43 浏览:126
存储器坏了 发布:2025-07-01 20:46:11 浏览:514
iphone怎么设锁屏密码 发布:2025-07-01 20:46:10 浏览:622
服务器如何处理千万请求 发布:2025-07-01 20:30:53 浏览:334
plsqldeveloperjob 发布:2025-07-01 20:29:59 浏览:806