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 ...
随机推荐
- flask POOL,websocket握手
一.POOL Pool就是为了多线程访问数据库,减少数据库压力 回顾pymysql import pymysql #建立连接 mysql_conn = pymysql.connect(host=&qu ...
- lf 前后端分离 (5) 优惠券
关于优惠券 优惠券主要通过前端传回来的course_id_list 创建数据结构 首先清空操作,将所有的优惠券清空, 并将所有优惠劵放到redis中的过程 import datetime import ...
- eclipse打可运行的jar
参考:https://www.cnblogs.com/wangzhisdu/p/7832666.html 用eclipse打包可运行的jar比较坑的地方: 3.1 从下拉框选择该jar的入口文件,即m ...
- Selenium获取页面指定元素个数
测试需求: 获取页面中下拉框个数,并验证是否与预期个数一致 方法1:因下拉框的tagname属性值为select,可通过获取标签为select的元素来获取下拉框个数 List<WebElem ...
- 微信小程序 - 视图层 | 基础语法
视图层 WXML(WeiXin Markup Language)是框架设计的一套标签语言,结合基础组件.事件系统,可以构建出页面的结构. 类似前端HTML 一.数据绑定 普通语法 test.wxml ...
- nowcoder911J 异或的路径
题目链接 题意 给出一棵树,每条边有边权.求\(\sum\limits_{i=1}^n{f(i,j)}\),\(f(i,j)\)表示从i到j路径的异或和. 思路 \(g_i\)表示从根到\(i\)的异 ...
- 洛谷 题解 P4198 【楼房重建】
首先明确问题,对于每栋楼房的斜率K=H/X,问题就是问有多少个楼房的K比前面所有楼房的K都要大. 这题树套树当然可以,但是挺麻烦的,本渣觉得最简单就是分块…… 将N个楼房分成T块,不断维护每个块内楼房 ...
- [LeetCode] 731. My Calendar II 我的日历之二
Implement a MyCalendarTwo class to store your events. A new event can be added if adding the event w ...
- [LeetCode] 235. Lowest Common Ancestor of a Binary Search Tree 二叉搜索树的最小共同父节点
Given a binary search tree (BST), find the lowest common ancestor (LCA) of two given nodes in the BS ...
- oracle--数据库扩容后出现ORA-27102
一,问题描述 Connected to an idle instance. SQL> startup nomount ORA: obsolete or deprecated parameter( ...