您的位置:首页 > 编程语言 > PHP开发

php模拟post提交(方法一)

2016-12-29 12:25 615 查看
index.php:

<?
/**
* 模拟post进行url请求
* @param string $url
* @param string $param
*/

function request_post($url = '', $param = '') {
if (empty($url) || empty($param)) {
return false;
}

$postUrl = $url;
$curlPost = $param;
$ch = curl_init();//初始化curl
curl_setopt($ch, CURLOPT_URL,$postUrl);//抓取指定网页
curl_setopt($ch, CURLOPT_HEADER, 0);//设置header
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//要求结果为字符串且输出到屏幕上
curl_setopt($ch, CURLOPT_POST, 1);//post提交方式
curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);
$data = curl_exec($ch);//运行curl
curl_close($ch);

return $data;
}

function testAction(){
$url = 'http://127.0.0.1/monipost/submit.php';
$post_data['appid']       = '10';
$post_data['appkey']      = 'cmbohpffXVR03nIpkkQXaAA1Vf5nO4nQ';
$post_data['member_name'] = 'zsjs123';
$post_data['password']    = '123456';
$post_data['email']    = 'zsjs123@126.com';
$o = "";
foreach ( $post_data as $k => $v )
{
$o.= "$k=" . urlencode( $v ). "&" ;
}
$post_data = substr($o,0,-1);

$res =request_post($url, $post_data);
print_r($res);

}
testAction();
echo "结束了";
?>


submit.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>模拟post测试</title>
</head>

<body>
<?
$appid=$_POST["appid"];
$appkey=$_POST["appkey"];
$member_name=$_POST["member_name"];
$password=$_POST["password"];
$email=$_POST["email"];

$myfile = fopen("newfile.txt", "a") or die("Unable to open file!");  //w  重写  a追加
$txt = $appid."\n".$appkey."\n".$member_name."\n".$password."\n".$email."\n";
fwrite($myfile, $txt);
fclose($myfile);
echo "返回结果";
?>
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: