Home >Backend Development >PHP Tutorial >Detailed explanation of 2 methods of php simulating POST submission_PHP tutorial

Detailed explanation of 2 methods of php simulating POST submission_PHP tutorial

WBOY
WBOYOriginal
2016-07-21 15:06:50994browse

1. Copy the code through the curl function

The code is as follows:

$post_data = array();
$post_data['clientname'] = "test08";
$post_data['clientpasswd'] = "test08";
$post_data['submit'] = "submit";
$url='http://xxx.xxx.xxx.xx/xx/xxx/top.php';
$o="";
foreach ($post_data as $ k=>$v)
{
$o.= "$k=".urlencode($v)."&";
}
$post_data=substr($o,0 ,-1);
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_URL ,$url);
//In order to support cookies
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
$result = curl_exec($ch);

2. Copy the code through fsockopen
> The code is as follows:
$URL='http://xxx.xxx.xxx.xx/xx/xxx/top.php';
$post_data['clientname'] = " test08";
$post_data['clientpasswd'] = "test08";
$post_data['submit'] = "ログイン";
$referrer="";
// parsing the given URL
$URL_Info=parse_url($URL);
// Building referrer
if($referrer=="") // if not given use this script as referrer
$referrer=< PRE class=php name="code">{1}

SERVER["SCRIPT_URI"]; // making string from $dataforeach($post_data as $key=>$ value)$values[]="$key=".urlencode($value); $data_string=implode("&",$values);// Find out which port is needed - if not given use standard (=80) if(!isset($URL_Info["port"]))$URL_Info["port"]=80;//
building POST-request:$request.="POST ".$URL_Info["path"]. " HTTP/1.1n";$request.="Host: ".$URL_Info["host"]."n";$request.="Referer: $referrern";$request.="Content-type: application/ x-www-form-urlencodedn";$request.="Content-length: ".strlen($data_string)."n";$request.="Connection:
closeen";$request.="n" ;$request.=$data_string."n";$fp = fsockopen($URL_Info["host"],$URL_Info["port"]);fputs($fp, $request);while(!feof($fp )) { $result .= fgets($fp, 128);}fclose($fp);



< /P>

Snoopy class (2)

sourceforge.net/projects/snoopy/


http://www.redalt. com/xref/trunk/nav.htm?wp-includes/class-snoopy.php.htm


HTTP class (1, 2)



PEAR HTTP_Request


http://pear.php.net/package/HTTP_Request


Popularity: 70%





http://www.bkjia.com/PHPjc/327596.html

truehttp: //www.bkjia.com/PHPjc/327596.htmlTechArticle1. Copy the code through the curl function. The code is as follows: $post_data = array(); $post_data['clientname'] = "test08"; $post_data['clientpasswd'] = "test08"; $post_data['submit'] = "submit";...
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