如果是GET的话就不必那么多设置。但是基本需要用到POST就需要用到以下的几个设置选项。

<?php
$username = "admin";
$password = "123467";
$urlpost = "username={$username}&password={$password}";
$curl = curl_init();//初始化会话
curl_setopt($curl,CURLOPT_URL,"http://localhost/login");
curl_setopt($curl,CURLOPT_RETURNTRANSFER,0);//post当中是不可见的,所以设置为0
curl_setopt($curl,CURLOPT_POST,1);//开启post
curl_setopt($curl,CURLOPT_POSTFIELDS,$urlpost);//使用POST来操作要发送的文件
$data = curl_exec($curl);//执行
curl_clsoe($curl);//关闭
?>

如果说是POST的传输那么以下这几种选项是必须要设置的:

curl_setopt($curl,CURLOPT_POST,1);
curl_setopt($curl,CURLOPT_POSTFIELDS,$postdata);
curl_setopt($curl,CURLOPT_HTTPHEADER,array("application/x-wwww-form-urlencode;cahrset=utf-8","content-length:".strlen($postdata)));

那么我们来写一个使用curl来进行传输的案例:

1.php

<?php
$data = "username=admin&password=123456";
$curl = curl_init();
curl_setopt($curl,CURLOPT_URL,"http://127.0.0.1/login.php");
//returnTransfer即为是否输出到显示页面,0为输出到显示页面,1为不输出到显示页面。
curl_setopt($curl,CURLOPT_RETURNTRANSFER,0);
//需要用到POST所以POST这个一定要开启状态,即为1.
curl_setopt($curl,CURLOPT_POST,1);
//使用POSTFIELDS来接收$data的数据
curl_setopt($curl,CURLOPT_POSTFIELDS,$data);
//执行$curl
curl_exec($curl);
//关闭$curl
curl_close($curl);
?>

login.php

<?php
if(isset($_POST['username']) and isset($_POST['password'])){
if($_POST['username'] == 'admin' && $_POST['password'] == '123456'){
echo "<script>alert('成功登陆')</script>";
}else{
echo "<script>alert('登陆失败')</script>";
}
}
?>

如果登陆成功则会弹出“成功登陆”否则会弹出“登陆失败”。

跟着百度学PHP[17]-PHP扩展CURL的POST传输数据的更多相关文章

  1. 跟着百度学PHP[17]-PHP扩展CURL的用法详解

    实现的功能: 1.实现远程获取和采集内容2.实现PHP 网页版的FTP上传下载3.实现模拟登陆:去一个邮件系统,curl可以模拟cookies4.实现接口对接(API),数据传输等:通过一个平台发送短 ...

  2. 跟着百度学PHP[17]-PHP扩展CURL的模拟登陆并获取数据

    这两天也不知道怎么,学习效率低.很无奈. 如何知道要去URL该怎么填写呢?就是填写表单中的Action内容: tempnam() 函数创建一个具有唯一文件名的临时文件. <?php header ...

  3. 跟着百度学PHP[17]-复习PDO的几个关键词

    主要就是复习一下几个关键词.发现太久没有写又忘了.惭愧. final self static const

  4. 跟着百度学PHP[14]-PDO之Mysql的事务处理2

    前面所将仅仅是在纯mysql下的讲解,这节就是要将其搬到PDO台面上来了. 将自动提交关闭. SetAttribute下有一个PDO::ATTR_AUTOCOMMIT 将其设置为0即可关闭,如:$pd ...

  5. 跟着百度学PHP[4]OOP面对对象编程-12-抽象类

    什么是抽象方法?我们在类里面定义的没有方法体的方法就是抽象方法.所谓的没有方法体指的是,在方法声明的时候没有大括号以及其中的内容,而是直接在声明时在方法名后加上分号结束,另外在声明抽象方法时还要加一个 ...

  6. 跟着百度学PHP[16]-验证码的学习

    一个验证码需要有以下步骤: 验证底图 验证码内容 生成验证码 对比校验 验证码需要依靠PHP的GD扩展库.一些集成环境是默认安装了GD拓展库. <?php //创建一个100*30px图片,默认 ...

  7. 跟着百度学PHP[6]超级全局变量

    超级全局变量在PHP 4.1.0之后被启用, 是PHP系统中自带的变量,在一个脚本的全部作用域中都可用. 参考文献:http://www.runoob.com/php/php-superglobals ...

  8. 跟着百度学PHP[5]函数篇2-PHP中的特殊形式的函数

    目录...................................................... .00x1 可变函数 在PHP里面如果说将“函数名称”赋予字符串类型的变量.在调用这个 ...

  9. 跟着百度学PHP[5]函数篇1-参数

    ps:俺的文章俺懂就行.大家不要拿来学习不然每个人的学习思路不一样.看视屏文章的老师不同笔记不同加上我也是新手上路,还怕误导!请大家看行且思考,帮忙挖Bug也可以. 案例要求:你可以写一个两行三列的表 ...

随机推荐

  1. form表单提交时选择性传值到后台

    正常情况下form表单提交会把表单内的内容提交到后台,但是如果有些内容只是作为展示或者是标记而不想传到后台,我们采用如下方法: jsp页面如下,我们不想提交id为userIdMark和pwdMark的 ...

  2. 理解Flow静态类型检查

    一.为什么在JavaScript中使用静态类型 了解静态类型的最快方法是将其与动态类型进行对比. 有静态类型参数的语言被称为静态类型语言. 另一方面,有动态类型参数的语言被称为动态类型语言.核心区别是 ...

  3. app store 注册账号生成证书上传app完整的教程

    app store为开发者提供四种类型的申请: 个人ios开发者计划$99/年 公司ios开发者计划$99/年 企业ios开发者计划$299/年 高校ios开发者计划免费 在这里主要介绍一下公司ios ...

  4. 解决Oracle在Linux下Listener起不来,error 111错误

    近来发生一个问题有点头疼,在linux上的Oracle数据库突然无法访问 主要报错如下: 基于本人的走歪路经验,分享一下我的解决思路: 首先,最直观的一点,监听器起不来,是不是数据库本身就没起来 se ...

  5. 转: 关于android 机型适配的问题

    转: http://www.csdn.net/article/2015-09-08/2825645

  6. Android异步载入全解析之大图处理

    Android异步载入全解析之大图处理 异步载入中很重要的一部分就是对图像的处理,这也是我们前面用异步载入图像做示例的原因. 一方面是由于图像处理不好的话会很占内存,并且easyOOM,还有一方面,图 ...

  7. vue - config(index.js)

    描述:我想,这是调用最多的一个文件了吧(无论是dev,还是prod) 'use strict' // Template version: 1.3.1 // see http://vuejs-templ ...

  8. Android_WebView_全屏

    WebView(网络视图)能加载显示网页,能够将其视为一个浏览器. 它使用了WebKit渲染引擎加载显示网页,实现WebView有下面两种不同的方法: 第一种方法的步骤: 1.在要Activity中实 ...

  9. 04-hibernate注解-一对一双向外键关联

    一对一双向外键 1,主控方的配置同一对一单向外键关联. 2,@OneToOne(mappedBy="card") //被控方 @OneToOne(mappedBy="ca ...

  10. LR11.5 安卓模拟器性能测试

    LR11.5 安卓模拟器性能测试 上一篇 / 下一篇  2013-07-04 08:07:19 / 个人分类:相关知识 查看( 1172 ) / 评论( 1 ) / 评分( 0 / 0 ) 1.首先下 ...