この記事の例では、送信後のデータを PHP でシミュレートする方法を説明します。皆さんの参考に共有してください。詳細は以下の通りです
PHP は送信後のデータをシミュレートします。これは多くの用途があり、Web サイトの収集、ログインなどに使用できます。
私のプロジェクトでのフォーラムログインの例を次に示します:
コードは次のとおりです:
関数 A_bbslogin($user_login,$password,$host,$port="80"){
//提出が必要なデータを投稿します
$argv = 配列(
'cookie' => array('user_login' =>$user_login, 'password' => $password,'_wp_http_referer'=>'/bbpress/','re'=>'','remember' =>本当)
);
foreach($argv['cookie'] as $key => $value) {
$params[] = $key . $value;
}
$params = implode('&', $params);
$header = "POST /bbpress/bb-login.php HTTP/1.1rn";
$header .= "ホスト:$host:$portrn";
$header .= "コンテンツタイプ: application/x-www-form-urlencodedrn";
$header .= "コンテンツの長さ: " .strlen($params) .
$header .= "接続: 閉じるrnrn";
$header .= $params
;
$fp = fsockopen($host, $port);
fputs($fp, $header);
while(!feof($fp)) {
$str = fgets($fp); //以下は私自身のロジックコードで、主に Cookie をシミュレートし、同期ログインに使用できます
if(!(strpos($str,"Set-Cookie:") === false)){
$tmparray = 爆発(" ",$str);
$cookiearray =explode("=,$tmparray[1]);
$cookiepaths =explode("=,$tmparray[6]);
$cookiename = urldecode($cookiearray[0]);
$cookievalue = urldecode(substr($cookiearray[1],0,strlen($cookiearray[1])-1));
$cookietime = 時間()+3600*24*7
$cookiepath = urldecode(substr($cookiepaths[1],0,strlen($cookiepaths[1])-1));
setcookie($cookiename,$cookievalue,$cookietime,$cookiepath);
}
}
fclose($fp);
}
この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。
http://www.bkjia.com/PHPjc/957538.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/957538.html
技術記事
投稿データをphpでシミュレートする方法 この記事では、投稿データをシミュレートするソケットメソッドのスキルを例とともに分析します。