php发送post请求(如何发送post请求)
本文目录
- 如何发送post请求
- php语言,用服务器发送一个post请求怎么写比如往百度首页发送post数据(a=1&b=2)
- php怎么以post方式发送数据
- php怎么发送get/post请求
- 用php做个post提交
- PHP中怎样发送post请求并获取网页
- 怎么用PHP发送POST请求
- php发送get,post请求的几种方法
如何发送post请求
PHP发送POST请求的三种方式 分别使用curl file_get_content fsocket 来实现post提交数据代码:class Request{ public static function post($url, $post_data = ’’, $timeout = 5){//curl $ch = curl_init(); curl_setopt ($ch, CURLOPT_URL, $url); curl_setopt ($ch, CURLOPT_POST, 1); if($post_data != ’’){ curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data); } curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout); curl_setopt($ch, CURLOPT_HEADER, false); $file_contents = curl_exec($ch); curl_close($ch); return $file_contents; }public static function post2($url, $data){//file_get_content***隐藏网址*** $data );***隐藏网址*** array( ’method’ =》 ’POST’, ’header’ =》 ’Content-type: application/x-www-form-urlencoded’, ’content’ =》 $postdata ) );$context = stream_context_create($opts);$result = file_get_contents($url, false, $context); return $result;}public static function post3($host,$path,$query,$others=’’){//fsocket$post="POST $path HTTP/1.1\r\nHost: $host\r\n"; $post.="Content-type: application/x-www-form-"; $post.="urlencoded\r\n${others}"; $post.="User-Agent: Mozilla 4.0\r\nContent-length: "; $post.=strlen($query)."\r\nConnection: close\r\n\r\n$query"; $h=fsockopen($host,80); fwrite($h,$post); for($a=0,$r=’’;!$a;){ $b=fread($h,8192); $r.=$b; $a=(($b==’’)?1:0); } fclose($h); return $r; }}
php语言,用服务器发送一个post请求怎么写比如往百度首页发送post数据(a=1&b=2)
function POST($Url,$Argv){$flag = 0;$post = ’’;$errno = ’’;$errstr = ’’;foreach($Argv as $key =》 $value){if($flag != 0){$post .= "&";$flag = 1;}$post .= $key . "=";$post .= urlencode($value);$flag = 1;}$length = strlen($post);$fp = fsockopen("localhost",80,$errno,$errstr,10) or exit($errstr."---》".$errno);$header = "POST " . $Url . " HTTP/1.1\r\n";$header .= "Host:127.0.0.1\r\n";$header .= "Referer:/flandy/post.php\r\n";$header .= "Content-Type: application/x-www-form-urlencoded\r\n";$header .= "Content-Length: " . $length . "\r\n";$header .= "Connection: Close\r\n\r\n";$header .= $post . "\r\n";fputs($fp,$header);$inheader = 1;$Return = ’’;while(!feof($fp)){$line = fgets($fp,1024);if($inheader && ($line == "\n" || $line == "\r\n"))$inheader = 0;if($inheader == 0) $Return .= $line;}fclose($fp);return trim($Return);}//调用方式$Result = POST(’xxxxxURLxxx’,array(’dataName’ =》 ’dataValue’));
php怎么以post方式发送数据
:用PHP向服务器发送HTTP的POST请求,代码如下:《?php/***发送post请求*@paramstring$url请求地址*@paramarray$post_datapost键值对数据*@returnstring*/.
php怎么发送get/post请求
用fopen打开url, 以get方式获取内容:《?php$fp = fopen($url, ‘r’);stream_get_meta_data($fp);while(!feof($fp)) {$result .= fgets($fp, 1024);}echo “url body: $result”;fclose($fp);?》希望能帮到你,我还要抓紧时间自己在后盾人自己学习呢,有不会的可以问我,咱俩一起研究研究。✧٩(ˊωˋ*)و✧
用php做个post提交
看来楼主的截图,写的纯粹的对curl的运用,个人写个简化版的!!$curl是接口页面。。。作用是取数据然后传递给本页面!!这个页面不是来源页面,只是一个接口文件而已!!如果你连这个页面都不想要,那就只能在本页面自己填写获取数据的代码了!!也就不用使用到post数据了!!$post_val是post提交所需的数据,如果为空,那就是get获取数据,也就是说$curl要自带参数,这个要看你接口页面的程序所定了!!例子:1.php $b = $_GET; //这边获取的就是2.php抛出来的数据。。。 $get_value = curl_file_get_contents(‘2.php’,"ct=28&lm=0&word=".$b."&co=23"); var_dump($get_value);//这边就是你想要的代码。。随便你怎么处理了!! //这个是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;}2.php(接口文件,也相当于把方法写在另一个文件,通过url调用此方法并回传值给1.php!!多用于2个文件不在同一程序内,引用(include)不了,又懒得自己再写个方法,从而通过这种方法获取,比如说淘宝接口) $get_key = $_POST; //这边就指明了只用能post方式获取数据 ..................(这边就是通过获取的$get_key来获取数据,并赋值与$value)...... return $value; //这边把数据抛给1.php(谁调用接口的就抛给谁)这样写的好处是,假如获取$value的代码很长,这样写可以减少代码量!!不在同一个服务器或者框架下面的程序也可以调用。。。。(同一个框架下的代码可以用include引入进来!!)先写到着吧!!!还有不懂的可以自己百度下或者追问。。我看到了会继续回答的!!
PHP中怎样发送post请求并获取网页
$post=’POST数据’; // 初始化 $curl = curl_init(’URL’); $header = array(); $header = ’User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36’; curl_setopt($curl, CURLOPT_HTTPHEADER, $header); // 不输出header头信息 curl_setopt($curl, CURLOPT_HEADER, 0); // 保存到字符串而不是输出 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // post数据 curl_setopt($curl, CURLOPT_POST, 1); // 请求数据 curl_setopt($curl, CURLOPT_POSTFIELDS, $post); // 是否抓取跳转后的页面 curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); $response = curl_exec($curl); curl_close($curl); echo $response;
怎么用PHP发送POST请求
PHP发送POST请求的三种方式
class Request{ public static function post($url, $post_data = ’’, $timeout = 5){//curl $ch = curl_init(); curl_setopt ($ch, CURLOPT_URL, $url); curl_setopt ($ch, CURLOPT_POST, 1); if($post_data != ’’){ curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data); } curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout); curl_setopt($ch, CURLOPT_HEADER, false); $file_contents = curl_exec($ch); curl_close($ch); return $file_contents; } public static function post2($url, $data){//file_get_content ***隐藏网址*** $data ); ***隐藏网址*** array( ’method’ =》 ’POST’, ’header’ =》 ’Content-type: application/x-www-form-urlencoded’, ’content’ =》 $postdata ) ); $context = stream_context_create($opts); $result = file_get_contents($url, false, $context); return $result; } public static function post3($host,$path,$query,$others=’’){//fsocket $post="POST $path HTTP/1.1\r\nHost: $host\r\n"; $post.="Content-type: application/x-www-form-"; $post.="urlencoded\r\n${others}"; $post.="User-Agent: Mozilla 4.0\r\nContent-length: "; $post.=strlen($query)."\r\nConnection: close\r\n\r\n$query"; $h=fsockopen($host,80); fwrite($h,$post); for($a=0,$r=’’;!$a;){ $b=fread($h,8192); $r.=$b; $a=(($b==’’)?1:0); } fclose($h); return $r; }}
***隐藏网址***
php发送get,post请求的几种方法
POST方法比较适合用于发送一个保密的(比如信用卡号)或者比较大量的数据到服务器,但速度慢。而Get方法会将所要传输的数据附在网址后面,然后一起送达服务器,因此传送的数据量就会受到限制且不安全,但是执行效率却比 Post方法好。具体来说如下:1、Get将表单中数据的按照variable=value的形式,添加到action所指向的URL后面,并且两者使用“?”连接,而各个变量之间使用“&”连接;Post是将表单中的数据放在form的数据体中,按照变量和值相对应的方式,传递到action所指向URL。2、Get是不安全的,因为在传输过程,数据被放在请求的URL中,而如今现有的很多服务器、代理服务器或者用户代理都会将请求URL记录到日志文件中,然后放在某个地方,这样就可能会有一些隐私的信息被第三方看到。另外,用户也可以在浏览器上直接看到提交的数据,一些系统内部消息将会一同显示在用户面前。Post的所有操作对用户来说都是不可见的。3、Get传输的数据量小,这主要是因为受URL长度限制;而Post可以传输大量的数据,所以在上传文件只能使用Post(当然还有一个原因,将在后面的提到)。4、Get限制Form表单的数据集的值必须为ASCII字符;而Post支持整个ISO10646字符集。5、Get是Form的默认方法。
更多文章:
远程桌面服务(win10的“远程桌面“选项是灰色的不可用,怎么才能让它启用)
2024年5月21日 05:40
混乱武林3下载(混乱武林哪个版本里的武当掌门是英雄在哪下载)
2024年6月30日 05:12