`
wensuper
  • 浏览: 66921 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

使用CURL把文件上传至服务器

阅读更多
一、客户端的PHP代码
<?php

//初始化一个句柄
$ch = curl_init();

//设置访问地址
curl_setopt($ch, CURLOPT_URL, "http://cq01-testing-lv01.vm.baidu.com:8808/mobile/uploadclient");

//curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);

//参数设置,是否显示头部信息,1为显示,0为不显示
curl_setopt($ch, CURLOPT_HEADER, 0);

//伪造网页来源地址,伪造来自百度的表单提交
//curl_setopt($ch, CURLOPT_REFERER, "http://www.baidu.com");

//设置这个是POST请求
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 100);

//furl中的值必须以@符号开头,@后面是你的相对或者绝对路径
$furl="@./a.php";
$post_data = array (
    "client_file" => $furl
);

curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
curl_exec($ch);

if(FALSE === curl_exec($ch)){

    echo "cUrl Error:".curl_error($ch);
}else{

    echo "upload success";
}
//释放cURL句柄
curl_close($ch);



二、服务器端代码

<?php

if(!isset($_FILES['client_file']) || $_FILES['client_file']['error'] > 0){

            $arrRet['error_no'] = -1;
            $arrRet['data'] = $arrRet['data'] = array(
                'msg' => "upload file failed",
            );
        }
$arrInput = array(
                'filename' => $_FILES['client_file']['name'],
                'tmp_name' => $_FILES['client_file']['tmp_name'],
                'type' => $_FILES['file']['type'],
            );

move_uploaded_file($arrInput['tmp_name'],ROOT_PATH."/data/app/client/bin/".$arrInput['filename']);



三、使用网页上传的方式


<form action="/upload.php" method="post" enctype="multipart/form-data">
                <label>上传文件: <input name="client_file" type="file"/></label>
                <input name="submit" type="submit" value="提交"/>
</form>
分享到:
评论
1 楼 wensuper 2012-10-18  
这篇文件应该对不少网友有帮助,希望真心能帮到你们,谢谢,如果感觉有用就ding一下吧,哈哈

相关推荐

    PHP实现通过CURL上传文件功能示例

    PHP使用CURL上传文件只需发送一个POST请求就可以了,在请求中设置某个字段为需要上传的文件全路径,并且以”@”开头,然后使用CURL把该变量以POST方式发送到服务器,在服务端即可以从超级全局变量$_FILES中取到相应...

    ownCloud java使用curl上传文件

    服务器上传文件到ownCloud私有云,java调用curl上传,代码简单

    windows下的CURL上传下载图片

    windows下C++利用CURL进行上传下载图片功能代码,主要说明可查看压缩包内的ReadMe说明文档,供初学者借鉴使用

    libcurl 上传文件

    vc6 工程 ,上传文件到web服务器

    C++Http上传文件到web服务器,解决中文参数乱码

    C++Http上传文件到web服务器,解决中文参数乱码问题,微软提供的Chttpconnect 类在请求http头参数是中文时出现乱码

    CURL用法大全

    cURL无法向本地文件系统或类似目的写入数据。 25:FTP 无法STOR文件。服务器拒绝了用于FTP上传的STOR操作。 26:读错误。各类读取问题。 27:内存不足。内存分配请求失败。 28:操作超时。到达指定的超时期限条件。 30:...

    C代码版本的HTTP POST上传文件/JSON

    C版本的HTTP,可以上传多个文件,可以向服务器发送json字串.自己工程中正在使用.因为也是是从网上找到的,做了一定修改,所以共享出来.

    curl命令详解(生成方法)

    如果你需要下载文件时忽略服务器的HTTP头信息,可以使用I选项,而如果你需要显示详细的调试信息,可以使用v选项帮助排查故障。如果你需要进行HTTP认证,可以使用u [user:password]选项指定用户名和密码。除此之外,...

    超全的curl命令详解文档集.zip

    linux curl是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称url为下载工具。  一,curl命令参数,有好多我没有用过,如果有误的地方,还请指正。 ...

    PHP简易文件上传系统 For 阿里云存储 v1.3.zip

    云存储PHP简易文件上传系统 v1.3 For 阿里云存储 简单的上传和下载 适合个人和小企业分享文件 适合一些资源论坛 增加独立上传站点 作为附件使用 因为使用的云存储,文件基本不存在丢失的情况 使用说明: 使用...

    PHP CURL实现模拟登陆并上传文件操作示例

    //要注意你需要上传的网站服务器的运行环境,还要看它的请求是否被压缩和转码还有就是 //在框架中或者说php5.3以下的版本可以用@,但是其它的就只能用new CURLfile()函数来转化文件了 //注意你要发送的服务器的...

    PHP简易文件上传系统 For 阿里云存储

    云存储PHP简易文件上传系统 v1.3 For 阿里云存储 简单的上传和下载 适合个人和小企业分享文件 适合一些资源论坛 增加独立上传站点 作为附件使用 因为使用的云存储,文件基本不存在丢失的情况 使用说明: 使用...

    file-server:Webdav文件服务器支持文件下载,上传和文件夹创建

    文件服务器 文件服务器基于webdav。 它支持文件下载,上传和文件夹创建。 但是上传文件和创建文件夹需要基本身份验证。 如何在Openshift上部署文件服务器 ...$ oc project virt-qe-3rd ...如何将文件上传到文件服务器

    class.curl.php

    * 4: 支持单个文件上传或同字段的多文件上传,支持相对路径或绝对路径. * 5: 支持返回发送请求前和请求后所有的服务器信息和服务器Header信息 * 6: 自动支持lighttpd服务器 * 7: 支持自动设置 REFERER 引用页 * ...

    实现Qt-FTP上传文件

    Qt 通过curl 向ftp服务器上传文件

    命令行工具curl的常用命令汇总.doc

    Curl是一个命令行工具,用于向服务器发送请求并接收响应。它支持多种协议,包括HTTP、HTTPS、FTP、SCP、SFTP等。Curl可以在终端中使用,通过命令行发送HTTP请求,获取响应并将其输出到终端。它可以用于测试API、下载...

    CURL错误代码大全.xls

    多台服务器上传文件 CURL错误代码大全

    Go-Bat是使用Go实现的CLI工具类似cURL的工具

    Bat 是使用 Go 实现的 CLI 工具,类似 cURL 的工具,可以说是 Go 语言版本的 cURL 。Bat 可以用来测试,调试和 HTTP 服务器进行一般的交互。 主要特性 表达式和直观的语法 内置 JSON 支持 表单和文件上传 HTTPS,...

    使用PHP curl模拟浏览器抓取网站信息

    官方解释curl是一个利用URL语法在命令行方式下工作的文件传输工具。curl是一个利用URL语法在命令行方式下工作的文件传输工具。它支持很多协议:FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP。curl...

Global site tag (gtag.js) - Google Analytics