2019-09-16 curl简单操作
1.get请求 (使用file_get_contents()函数也可以实现get请求)
//http_build_query() 构造一个url字符串
function http_get($url)
{
//1.初始化curl
$ch = curl_init();
//2.设置参数
curl_setopt($ch, CURLOPT_URL, $url);//指定网址
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//返回信息的数据类型为字符串
//3.执行
$output = curl_exec($ch);
echo $output;
//4.关闭
curl_close($ch); }
//调用get
$data = array(
"data" =>"123456"
);
$url = "http://www.test.com/curl/curl_login.php?".http_build_query($data); http_get($url);
2.post模拟登陆
/*post 已经封装*/
function login($url,$post_data)
{
//初始化curl
$ch = curl_init();
//跳转网址
curl_setopt($ch, CURLOPT_URL, $url);
//设置头文件
curl_setopt($ch, CURLOPT_HEADER, 0);
//返回信息的数据类型为字符串
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//设置post
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
//执行命令
$output = curl_exec($ch);
return $output;
//关闭curl
curl_close($ch);
} /*调用封装好的方法*/
$url = "http://www.test.com/curl/curl_login.php";
$post_data = array(
"name"=>"wangwu",
"password"=>"1234567"
);
$resultarr = login($url,$post_data);
$result = json_decode($resultarr,true);
if($result['status']==1){
echo $result['info'];
}else{
echo $result['info'];
}
处理页面
//声明方法
function info($status=0,$data="",$lan="1"){
$info=array(
"status"=>"$status",
"info"=>"$lan",
"data"=>"$data"
);
echo json_encode($info);
die();
} //接值
$name = $_POST['name'];
$password = $_POST['password']; //PDO链接数据库
$dsn = "mysql:host=127.0.0.1;port=3306;charset=utf8;dbname=news";
$pdo = new PDO($dsn,"root","root"); //sql语句
$sql = "select * from user where name = '$name'";
$namedata = $pdo->query($sql);
$nameresult = $namedata->fetch(PDO::FETCH_ASSOC);
if($nameresult){
if($nameresult['password']==$password){
info("1","","登陆成功");
}else{
info("3","","登陆失败 原因是:密码有误");
}
}else{
info("2","","登录失败 原因是:不存在的账户");
}
2019-09-16 curl简单操作的更多相关文章
- [2019.03.16]使用DOM操作函数和CSS选择器来针对已有的HTML进行只凭JS的改动
刚入职的时候看到公司用的HTML日志生成工具附带的Panel,工具不够用,找个Fail还要找半天,于是自己琢磨着添砖加瓦.以前也是个半吊子前端工程师,现在可倒好,想要改页面却连页面生成的模板在哪里都不 ...
- GitHub学习心得之 简单操作
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 前言 本文对Github的基本操作进行了总结, 主要基于以下文章: http://gitre ...
- Flume的介绍和简单操作
Flume是什么 Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集.聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据:同时,Flume提供对数 ...
- php使用curl简单抓取远程url的方法
这篇文章主要介绍了php使用curl简单抓取远程url的方法,涉及php操作curl的技巧,具有一定参考借鉴价值,需要的朋友可以参考下 本文实例讲述了php使用curl抓取远程url的方法.分 ...
- Linux 中 Vi 编辑器的简单操作
Linux 中 Vi 编辑器的简单操作 Vi 编辑器一共有3种模式:命名模式(默认),尾行模式,编辑模式.3种模式彼此需要切换. 一.进入 Vi 编辑器的的命令 vi filename //打开或新 ...
- MongoDB数据库简单操作
之前学过的有mysql数据库,现在我们学习一种非关系型数据库 一.简介 MongoDB是一款强大.灵活.且易于扩展的通用型数据库 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数 ...
- MySQL基本简单操作01
MySQL基本简单操作 学会了安装Docker,那么就将它利用起来.(/滑稽脸) 之前想学习Mysql(Windows下配置真麻烦),学会了Docker就方便了,直接使用Docker创建一个Mysql ...
- ubuntu16.04下Hyperledger之搭建Fabric环境简单操作(五步启动e2e_cli)
如果你已经安装好go等工具.git及checkout相关代及下载相关镜像,您只需下面5步就能up e2e_cli~/go/src/github.com/hyperledger/fabric$ sudo ...
- zookeeper简单操作
接下来主要讲述了通过zookeeper服务器自带的zkCli.sh工具模拟客户端访问和操作zookeeper服务器(包括集群服务器). 当成功启动zookeeper服务后,切换到server1/bin ...
随机推荐
- django项目中cxselect三级联动
下载cxselect插件放在static文件夹下 前端引入 <script src="/static/js/jQuery-1.8.2.min.js"></scri ...
- ipc.Client: Retrying connect to server: .../10.0.0.27:10020. Already tried 6 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1 SECONDS)
运行 时候爆出这个错 Exception in thread "main" java.io.IOException: java.net.ConnectException: Call ...
- Python DataFrame 按条件筛选数据
原始数据如下. 比如我想查看id等于11396的数据. pdata1[pdata1['id']==11396] 查看时间time小于25320的数据. pdata1[pdata1['time']< ...
- JDOJ 1790: 高精度A-B
JDOJ 1790: 高精度A-B JDOJ传送门 洛谷 P2142 高精度减法 洛谷传送门 题目描述 高精度减法 输入格式 两个整数a,b(第二个可能比第一个大) 输出格式 结果(是负数要输出负号) ...
- 团队冲刺---Five
今天的计划:做界面. 昨天做了什么? 研究了css代码和模板,进行测试模板. 遇到的困难:使用标签时运用不熟总出错.
- LOJ 数列分块入门系列
目录 1.区间加+单点查 每个块维护tag,散的暴力改. code: #include<bits/stdc++.h> using namespace std; const int maxn ...
- Windows/Linux下jdk环境配置
Windows 7下: Windows7 x64位系统 安装好java 1.点击开始菜单选择计算机选项右键选择属性选项 即可 2.然后在属性界面点击如图所示的高级系统设置选项 3.打开系统属性界面然后 ...
- 洛谷 P1209 [USACO1.3]修理牛棚 Barn Repair题解
题目 打死我也没想到是贪心 虽然是lkx写了贪心题解让我去点赞我才写的这道题 神仙思路 首先排好序 假设我们现在只有一块木板 我们做一个差分数组 对这个差分数组排序之后 一次断开最长的区间 m-1次之 ...
- 【2019.7.15 NOIP模拟赛 T1】夹缝(mirror)(思维题)
思维题 此题应该是比较偏思维的. 假设一次反射后前进的距离是\(2^x(2y+1)\),则显然,它可以看做是前进距离为\(2^x\)的光线经过了\((2y+1)\)次反射,两者是等价的,甚至后者可能还 ...
- [LeetCode] 141. Linked List Cycle 单链表中的环
Given a linked list, determine if it has a cycle in it. To represent a cycle in the given linked lis ...