Home >Backend Development >PHP Tutorial >Use PHP to simulate POST to submit data_PHP tutorial
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);
?>