网站首页 > 文章中心 > 其它

phppost数据提交

作者:小编 更新时间:2023-10-22 12:18:42 浏览量:28人看过

用php做个post提交

看来楼主的截图,写的纯粹的对curl的运用,个人写个简化版的!!

$post_val是post提交所需的数据,如果为空,那就是get获取数据,也就是说$curl要自带参数,这个要看你接口页面的程序所定了!!

例子:

①php

$b = $_GET['k'];

var_dump($get_value);//这边就是你想要的代码..随便你怎么处理了!!

phppost数据提交-图1

//这个是curl的精简版...不用那么多代码

function curl_file_get_contents($curl,$post_val="")

{

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $curl);

curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);

if($post_val)

curl_setopt($ch, CURLOPT_POST, 1);

curl_setopt($ch, CURLOPT_POSTFIELDS, $post_val);

}

$r = curl_exec($ch);

curl_close($ch);

return $r;

$get_key = $_POST['word']; //这边就指明了只用能post方式获取数据

..................(这边就是通过获取的$get_key来获取数据,并赋值与$value)......

return $value; //这边把数据抛给1.php(谁调用接口的就抛给谁)

这样写的好处是,假如获取$value的代码很长,这样写可以减少代码量!!不在同一个服务器或者框架下面的程序也可以调用....(同一个框架下的代码可以用include引入进来!!)

先写到着吧!!!还有不懂的可以自己百度下或者追问..我看到了会继续回答的!!

php 怎么POST获取数据?

方法1、最常见的方法是:$_POST['fieldname'];

说明:只能接收Content-Type:

application/x-www-form-urlencoded提交的数据

解释:也就是表单POST过来的数据

说明:

允许读取

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,包括

二进制文件

流也可以.

所以用方法二是最保险的方法

总是产生

变量包含有原始的

数据.

此变量仅在碰到未识别

MIME

类型的数据时产生.

对于

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如何POST提交数据

用PHP向服务器发送HTTP的POST请求,代码如下:

php

/**?

*?发送post请求?

*/?

function?send_post($url,?$post_data)?{?

$postdata?=?http_build_query($post_data);?

$options?=?array(?

'http'?=?array(?

'method'?=?'POST',?

'header'?=?'Content-type:application/x-www-form-urlencoded',?

'content'?=?$postdata,?

)?

);?

$context?=?stream_context_create($options);?

$result?=?file_get_contents($url,?false,?$context);???

return?$result;?

使用的时候直接调用上面定义的send_post方法:

$post_data?=?array(

'username'?=?'username',

'password'?=?'password'

);

send_post('网址',?$post_data);

PHP里模拟Post提交是什么意思?

//这是我写的封装类,也就是模拟POST提交

//$durl也就是URL地址,比如

//$timeout超时时间

//$data?为POST数组

//模拟POST提交的用途,采集数据,模拟用户登录(为什么现在登录需要验证码,不是为了测你智商..

更不是考你的眼力,而防止你模拟登录..用暴力破解法强行破解密码)

$ch?=?curl_init();

curl_setopt($ch,?CURLOPT_URL,?$durl);

curl_setopt($ch,?CURLOPT_RETURNTRANSFER,?1);

curl_setopt($ch,?CURLOPT_TIMEOUT,?$timeout);

curl_setopt($ch,?CURLOPT_USERAGENT,?_USERAGENT_);

curl_setopt($ch,?CURLOPT_REFERER,?_REFERER_);

curl_setopt($ch,?CURLOPT_POST,?1);?//设置为POST传输

curl_setopt($ch,?CURLOPT_POSTFIELDS,?$data);?//添加post数据

$r?=?curl_exec($ch);

var_dump($ch);

if?($r?===?false)?{?//判断错误

echo?curl_error($ch);

$info?=?curl_getinfo($ch);?//能够在cURL执行后获取这一请求的有关信息

return?$r;

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

form表单demo:task.html

fieldset id="setFiled"

legend发布任务/legend

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

label任务类型:/labelbr

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

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

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

label酬nbsp;nbsp;金:/labelbr

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

label截止时间:/labelbr

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

label详细描述:/labelbr

/form

扩展资料

php接收POST数据的三种方式

①.、$_POST 方式接受数据

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

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

如果访问原始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过来的数据.

如果访问原始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数据

以上就是土嘎嘎小编为大家整理的phppost数据提交相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章