PHP里模拟Post提交是啥意思?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP里模拟Post提交是啥意思?相关的知识,希望对你有一定的参考价值。

我想问下什么叫做模拟post提交,有什么作用?有什么例子参考下吗?图片上传模拟POST提交有是做什么用的?

//这是我写的封装类,也就是模拟POST提交
//$durl也就是URL地址,比如www.youku.com
//$timeout超时时间
//$data 为POST数组
//模拟POST提交的用途,采集数据,模拟用户登录(为什么现在登录需要验证码,不是为了测你智商..
更不是考你的眼力,而防止你模拟登录..用暴力破解法强行破解密码)
function curl_file_post_contents($durl, $timeout = 5, $data) 
    $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执行后获取这一请求的有关信息
    curl_close($ch);
    return $r;

参考技术A POST提交是浏览器干的事情,说得简单点就是用php模拟浏览器完成一些操作,比如用php采集,与其他网站进行交互等。 参考技术B php 表单提交常见的就是post和get 模拟提交就是通过其他技术达到post或get的效果
php 常见的模拟就是curl方式了 作用比如说刷票 每次提交它可以模拟ip 逃过ip限制
图片上传 可以post提交 不用模拟
参考技术C 表单的提交方式有post和get两种,你可以这样理解,使用post传输,不容易泄密,传递过程无法直观看到。而使用get方式传递,则会在网页地址后面多一大串加密的东西,不利于安全(尽管加密)。本回答被提问者和网友采纳 参考技术D 就是让你用php自己组织http头,发送到服务器,就模拟玩了!

以上是关于PHP里模拟Post提交是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章

这段表单如何用PHP 模拟post提交?

php curl 模拟post表单向提交数据

php curl模拟post请求提交数据样例总结

php模拟post提交提交json数据

三种方法教你如何用PHP模拟post提交数据

PHP模拟post提交数据方法汇总