PHP跨网域跨主机跨server上传文件实例教程

如何跨网域跨主机跨server上传文件?一般最基本的上传方式是:

1.使用者把文件上传到 web server

2. web server 把上传的文件 利用 move_uploaded_file() 函式,将档案移到指定的文件夹内

但是,有时候我们需要把上传的档案放到另一台专门放文件的 file server,这时候,就无法利用 move_uploaded_file() 去搬移文件了,而需要利用 ftp 去传送文件至 file server,方法很简单...

直接看程式码:

 

 代码如下 复制代码

$file = $_FILES['file'];

$file_tmp = $file['tmp_name'];

$file_name = $file['name'];

if(is_uploaded_file($file_tmp)){ //确定user有"上传"文件

$file_ext = strrchr($file_name,'.'); //上传文件的副文件名

$file_name_new = date('YmdHis').$file_ext;

$host = '127.0.0.1';

$port = '21';

$user = 'admin';

$pass = '123456';

$link = ftp_connect($host,$port);

$login = ftp_login($link,$user,$pass);

ftp_chdir($link,'filedir'); //切换到要放文件的文件夹

if(ftp_put($link,$file_name_new,$file_tmp,FTP_BINARY)){

$msg = '上传成功';

}else{

$msg = '上传失败';

}

}else{

$msg = '上传失败';

}

ftp_close($link);

echo $msg;

 

时间: 2024-07-28 23:43:10

PHP跨网域跨主机跨server上传文件实例教程的相关文章

Ajax表单异步上传文件实例代码(包括文件域)_AJAX相关

1.起因 做前台页面时,需要调用WebAPI的Post请求,发送一些字段和文件(相当于把表单通过ajax异步发送出去,得到返回结果),然后得到返回值判断是否成功. 2.尝试 先是尝试了一下 "jQuery Form Plugin" ,这玩意就是的巨大的坑,实现他和jquery1.9.2兼容性就不是太好,好不容易把$.browser的问题解决了,发现用他上传文件得不到返回值. $("#view").submit( $("#view").ajaxSu

Ajax表单异步上传文件实例代码(包括文件域)

1.起因 做前台页面时,需要调用WebAPI的Post请求,发送一些字段和文件(相当于把表单通过ajax异步发送出去,得到返回结果),然后得到返回值判断是否成功. 2.尝试 先是尝试了一下 "jQuery Form Plugin" ,这玩意就是的巨大的坑,实现他和jquery1.9.2兼容性就不是太好,好不容易把$.browser的问题解决了,发现用他上传文件得不到返回值. $("#view").submit( $("#view").ajaxSu

对于云主机FTP不能上传文件,由于端口不能打不开

对于不能够打不开宝塔ftp问题,我与大家分享一下! 第一个问题:端口问题,在阿里云安全组,设30000-50000范围之内. 格式为: 30000/50000 地址池:0.0.0.0/0 入方向内设置

环信node server上传文件 无法上传

问题描述 github地址:https://github.com/easemob/emc ... scase 50://上传文件     easemob.uploadFile({     file:'/image/01.jpg',     //header:{'restrict-access':true}});break;求解决办法

jQuery.form插件的使用及跨域异步上传文件_jquery

先说明白 这个跨域异步上传功能我们借助了Jquery.form插件,它在异步表单方面很有成效,而跨域我们会在HTTP响应头上添加 access-control-allow-method,当然这个头标记只有IE10,火狐和谷歌上支持,对于IE10以下的浏览器来说,我们就不能用这种方式了,我们需要换个思路去干这事,让服务端去重写向我们的客户端,由客户端(与文件上传页面在同域下)来返回相关数据即可. 再做事 1 Jquery.form的使用 <form method="post" ac

基于Jquery插件实现跨域异步上传文件功能_jquery

先说明白 这个跨域异步上传功能我们借助了Jquery.form插件,它在异步表单方面很有成效,而跨域我们会在HTTP响应头上添加access-control-allow-method,当然这个头标记只有IE10,火狐和谷歌上支持,对于IE10以下的浏览器来说,我们就不能用这种方式了,我们需要换个思路去干这事,让服务端去重写向我们的客户端,由客户端(与文件上传页面在同域下)来返回相关数据即可. 再做事 1 Jquery.form的使用 <form method="post" act

ASP跨服务器上传文件完美解决

服务器|解决|上传 如果你有两个空间,一个大而慢,另外一个小而快,或者其中一个不支持FSO,那么跨服务器上传文件这个问题就摆在你面前了,下面就是我在解决ylog.net里面的跨服务器上传文件的日记,这个问题看似简单,里面的细节问题却是非常有趣 前提条件,空间都必须支持ASP,上传文件的服务器支持FSO,下面的叙述中,diygame.com为存上传文件的服务器,ylog.net为网站服务器,即显示用户界面的服务器... 实现功能,文件上传,上传后在网页的文本区域自动加上对于图片的UBB码,为了清楚

iis-asp.net跨站点上传文件

问题描述 asp.net跨站点上传文件 iis有两个站点: 1). web(asp.net) --> http://192.168.1.104:8282; 2).FileServer --> http://192.168.1.104:8083. PS:FileServer站点有一虚拟目录(fileserver/),而虚拟目录对应的物理路径是一个共享目录. 操作: web站点上传文件需保存到FileServer站点的fileserver虚拟目录对应的目录下. 补充: iis未能提供帐号和密码,匿

跨服务器上传文件完美解决

如果你有两个空间,一个大而慢,另外一个小而快,或者其中一个不支持FSO,那么跨服务器上传文件这个问题就摆在你面前了,下面就是我在解决ylog.net里面的跨服务器上传文件的日记,这个问题看似简单,里面的细节问题却是非常有趣前提条件,空间都必须支持ASP,上传文件的服务器支持FSO,下面的叙述中,diygame.com为存上传文件的服务器,ylog.net为网站服务器,即显示用户界面的服务器...实现功能,文件上传,上传后在网页的文本区域自动加上对于图片的UBB码,为了清楚,下面列出所有用到的文件