php模拟post 提交表单
<?php
header('Content-type: text/html;charset=UTF-8');
$action=$_REQUEST['action'];
//获取验证码
if($action=='ask_reg'){
$phone=$_REQUEST['phone'];
if(!preg_match('/^((13[0-9]{1})|159|153|189)+\d{8}$/',$phone)){
echo json_encode(array("result"=>"phoneError"));
exit;
}
$arr = array ("phone"=>$phone,"mac"=>"aabbccdreeff");
$data=json_encode($arr);
//$url='http://mobile.9797168.com:8080/uc/ask_reg?data={"phone":"15913160604","mac":"aabbccdreeff"}';
$url='http://mobile.9797168.com:8080/uc/ask_reg';
$json_data = postData($url, $data);
echo $json_data; }elseif($action=='usr_reg'){
//注册用户
$phone=$_REQUEST['phone'];
$nickname=$_REQUEST['nickname'];
$pswd=$_REQUEST['pswd'];
$validcode=$_REQUEST['validcode'];
if(!preg_match('/^((13[0-9]{1})|159|153|189)+\d{8}$/',$phone)){
echo json_encode(array("result"=>"phoneError"));
exit;
}
$arr = array (
"nickname"=>$nickname,
"phone"=>$phone,
"pswd"=>$pswd,
"mac"=>"aabbccdreeff",
"validcode"=>$validcode
);
$data=json_encode($arr);
$url='http://mobile.9797168.com:8080/uc/usr_reg';
$json_data = postData($url, $data); echo $json_data;
}elseif($action=='usr_login'){
//用户登陆
$phone=$_REQUEST['phone'];
$pswd=$_REQUEST['pswd'];
if(!preg_match('/^((13[0-9]{1})|159|153|189)+\d{8}$/',$phone)){
echo json_encode(array("result"=>"phoneError"));
exit;
}
$arr = array (
"phone"=>$phone,
"pswd"=>$pswd
);
$data=json_encode($arr);
$url='http://mobile.9797168.com:8080/uc/usr_login';
$json_data = postData($url, $data);
echo $json_data;
} //curl 模拟提交交
function postData($url, $data)
{
$ch = curl_init();
$timeout = 300;
curl_setopt($ch, CURLOPT_URL, $url);
//curl_setopt($ch, CURLOPT_REFERER, "http://127.0.0.1/"); //构造来路
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, 'data='.$data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$handles = curl_exec($ch);
curl_close($ch);
return $handles;
}
php模拟post 提交表单的更多相关文章
- C#模拟POST提交表单(一)--WebClient
C#的提交表单方式主要有两种WebClient与HttpWebRequest,这里先介绍一种 WebClient,转送门:http://msdn.microsoft.com/zh-cn/library ...
- js模拟支付宝提交表单
弄过支付宝的程序猿可能都知道,里面有非常多地方都用到了自提交表单的方式,支付宝的接口通过请求API的形式取得server返回的表单字符串,使用out.print("表单字符串")在 ...
- Java模拟post提交表单数据
package test; import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOExcep ...
- C#模拟POST提交表单(二)--HttpWebRequest以及HttpWebResponse
上次介绍了用WebClient的方式提交POST请求,这次,我继续来介绍用其它一种方式 HttpWebRequest以及HttpWebResponse 自认为与上次介绍的WebClient最大的不同之 ...
- 【HTTP】模拟form提交表单(转)
第一种:WebClient string postString = "arg1=a&arg2=b";//这里即为传递的参数,可以用工具抓包分析,也可以自己分析,主要是for ...
- js模拟post提交表单
function post(URL, PARAMS) { var temp = document.createElement("form"); ...
- php 提交表单
滴答…滴答…的雨,欢迎大家光临我的博客. 学习是快乐的,教育是枯燥的. 博客园 首页 博问 闪存 联系 订阅 管理 随笔-58 评论-2017 文章-5 trackba ...
- 搭建简单Django服务并通过HttpRequester实现GET/POST http请求提交表单
调试Django框架写的服务时,需要模拟客户端发送POST请求,然而浏览器只能模拟简单的GET请求(将参数写在url内),网上搜索得到了HttpRequester这一firefox插件,完美的实现了模 ...
- .Net模拟提交表单
2016-09-0210:49:20 以中邮速递API为服务接口,由于提交方式为表单提交,我要获取返回值来处理其他业务,所以一开始尝试采用Js后台获取返回值,但是涉及到跨域请求限制问题,那边服务端接口 ...
随机推荐
- [Q]关于无法进入主界面问题解答
打图精灵适用于AutoCAD2007或更高版,低于2007版无法使用. 若在安装打图精灵前AutoCAD已经打开,则需要将AutoCAD重新打开,然后使用“QPlot”命令. 若重新打开仍然调不出界面 ...
- Dreamweaver层使用八定律
当然,这些并非真正的定律,而只是一些有益的忠告,使你免陷于使用层时可能的困顿中.原来有九条定律的,我们精简掉一条,还有下面的八条: 1. 如果你要嵌套层,决不要使用多重父层,应共享一个共同的单一父层. ...
- BFS,DFS伪代码
//bfs #define queue_init (head=tail=0) #define queue_is_empty (head==tail) #define en_queue(x) (queu ...
- python下载时报错 Errno 10060] A connection attempt failed because the connected party did not properly respond after a period of time
def downloadXml(isExists,filedir,filename): if not isExists: os.mkdir(filedir) local = os.path.join( ...
- sql优化方式-转载
我始终认为,一个系统的性能的提高,不单单是试运行或者维护阶段的性能调优的任务,也不单单是开发阶段的事情,而是在整个软件生命周期都需要注意,进行有效工作才能达到的.所以我希望按照软件生命周期的不同阶段来 ...
- Yii2 基于RESTful api 坑 访问会把控制器名称变为复数
'urlManager' => [ 'class' => 'yii\web\UrlManager', 'enablePrettyUrl' => true, 'enableStrict ...
- Android 使用URLConnection来post数据
/** * @param postUrl * 需要post的地址 * @param map * 存储数据的map * @param handler * 处理message的handler */ pub ...
- [code3119]高精度练习之大整数开根
试题描述 给出一个正整数n,求n开根号后的整数部分的值.n的位数不超过1000位. 输入 读入一个不超过1000位的正整数n. 输出 输出所求答案 输入示例 17 输出示例 4 高精度开根:需要 ...
- selenium中的webdriver定位元素失败的常见原因
自动化测试中经常会出现无法定位元素的情况,报selenium.common.exceptions.NoSuchElementException错误 Frame/Iframe原因定位不到元素: 这个是最 ...
- 安装node-sass
SASS_BINARY_SITE=https://npm.taobao.org/mirrors/node-sass/ npm install node-sass