Home >Backend Development >PHP Tutorial >Use PHP to simulate POST to submit data_PHP tutorial

Use PHP to simulate POST to submit data_PHP tutorial

WBOY
WBOYOriginal
2016-07-20 11:05:311048browse

Use PHP socket programming to directly send data to the interface to simulate post operations.

/***************************************************** *******
Name: POST test program Vesion: 1.0 Date: 2004-08-05 ************************* ***********************************/
/ $flag = 0;
//Data to be posted
$argv = array(
'var1'=>'abc',
'var2'=>'How are you');
//Construct the string to be posted
foreach ($argv as $key=>$value) {
if ($ flag!=0) {
$params .= "&";
$flag = 1;
}
$params.= $key."="; $params.= urlencode($ value);
$flag = 1;
}
$length = strlen($params);
//Create socket connection
$fp = fsockopen("127.0.0.1",80 ,$errno,$errstr,10) or exit($errstr."--->".$errno);
//Construct the header of the post request
$header = "POST /mobile/try. php HTTP/1.1rn";
$header .= "Host:127.0.0.1rn";
$header .= "Referer:/mobile/sendpost.phprn";
$header .= "Content -Type: application/x-www-form-urlencodedrn";
$header .= "Content-Length: ".$length."rn";
$header .= "Connection: Closernrn";
//Add post string
$header .= $params."rn";
//Send post data
fputs($fp,$header);
$inheader = 1 ;
while (!feof($fp)) {
$line = fgets($fp,1024); //Remove the header of the request packet and only display the return data of the page
if ($inheader && ( $line == "n" || $line == "rn")) {
$inheader = 0;
}
if ($inheader == 0) {
echo $line;
}
}
fclose($fp);
?>


www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/445120.htmlTechArticleUse PHP socket programming to directly send data to the interface to simulate the post operation. ? /****************************************************** ********** Name: POST test program Vesion: 1.0...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn