FTP上传 -首先上传文件到的那台电脑得安装ftp
/*↓↓↓↓ add upload ftp file 2014-03-16*/
/*↓↓↓↓ add 2014-03-16 ftp upload file*/
var $ftpserver;
var $ftpusername;
var $ftpuserpass;
var $ftpUrl;
/*↑↑↑↑ add 2014-03-16 ftp upload file*/
function uploadFtpFile($localfile,$safe_filename){
$ftp_server = $this->ftpserver;//"hth866.eicp.net";
$port=21;
$timeout=30;
$ftp_user_name =$this->ftpusername;//"tjx";
$ftp_user_pass =$this->ftpuserpass;//"123";
$ftp_Url=$this->ftpUrl;
$conn_id = ftp_connect($ftp_server,$port,$timeout);// or die("Couldn't connect to $ftp_server");
if($conn_id){
$login_result = ftp_login($conn_id,$ftp_user_name,$ftp_user_pass);
if($login_result){
$file = $localfile;//'D:/xampp/htdocs/helpdesk/Teap-sheet1测试.xls';
$remote_file =$ftp_Url.'/'.$safe_filename;
if (ftp_put($conn_id,$remote_file,$file, FTP_BINARY)) {
$result = true;
} else {
$result = false;
}
ftp_close($conn_id);
}else{$result=false;}
}else{$result=false;}
return $result;
}
/*↓↓↓↓ 添加并注释 2014-03-17*/
// function downFtpFile($filename){
// $ftp_server = "122.96.28.77 ";
// $port=21;
// $timeout=30;
// $ftp_user_name ="tjx"; //"zfy";
// $ftp_user_pass ="123"; //"zhangfangyong,./";
// $conn_id = ftp_connect($ftp_server,$port,$timeout) or die("Couldn't connect to $ftp_server");
// $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
// $filename="D:/xampp/htdocs/helpdesk/Teap-sheet12.xls";
// $web_filename="Teap-sheet1.xls";
// if(ftp_get($conn_id,$filename,$web_filename,FTP_ASCII)){
// echo "下载成功\n";
// }else{
// echo "下载失败\n";
// }
// ftp_close($conn_id);
// }
/*↑↑↑↑ 添加并注释 2014-03-17*/
/*↑↑↑↑ add upload ftp file 2014-03-16*/
/*add 2014-03-17 only delete runinformation'file*/
function deleteRuninfoFile($filename) {
$file=$this->attachmentsDir."/$filename";
unlink($file);
//return true;
}
/* add 2014-03-17 only delete runinformation'file*/
/**
* @author zhanglingzhi
* 上传文件
*/
function uploadfile($upFile) {
$maxsize = $this->getSetting('attachment_max_size'); //读取/admin/config.php配置中的attachment_max_size
if ($maxsize) {
$MAXIMUM_FILESIZE = $maxsize;
} else {
$MAXIMUM_FILESIZE = 5 * 1024 * 1024;
}
$possibles = $this->getSetting('attachment_types_allowed'); //读取/admin/config.php配置中的attachment_types_allowed
if (!empty($possibles)) {
$possibles = explode(",", $possibles);
$filetype_string = join("|", $possibles);
$rEFileTypes = "/^\.(" . $filetype_string . "){1}$/i";
} else {
$rEFileTypes = "/^\.(zip|rar|jpg|jpeg|gif|png|doc|docx|txt|rtf|pdf|xls|xlsx|ppt|pptx){1}$/i"; //如果没有设置则使用默认值
}
$dir_base = $this->attachmentsDir;
$isFile = is_uploaded_file($upFile['tmp_name']);
if ($isFile) {
$arrTemp = explode(".", $upFile['name']);
$filename_sever = date("his") . rand(100, 999);
$filename_sever .= "." . $arrTemp[count($arrTemp) - 1];
$safe_filename = $filename_sever;
/* 存储上传图片的路径 */
if ($upFile['size'] <= $MAXIMUM_FILESIZE && preg_match($rEFileTypes, strrchr($safe_filename, '.'))) {
// 2014-03-13 注释掉 并修改方法
$isMove = move_uploaded_file($upFile['tmp_name'], $dir_base . "/" . $safe_filename);
// echo $upFile['tmp_name']."*******".$dir_base . "/" . $safe_filename; exit;
if ($isMove) {
//$isBackupMove=$this->uploadFtpFile($dir_base . "/" . $safe_filename,$safe_filename);
// if($isBackupMove){
$result = $safe_filename;
//}
// else{
// $this->deleteRuninfoFile($safe_filename);
// $result=FALSE;
// //备份服务器文件上传失败
// }
//上传成功
} else {
$result = FALSE;
//上传失败
}
} else {
$result = FALSE;
//文件过大,或者文件类型不允许上传
}
} else {
$result = FALSE;
//没有上传文件
}
return $result;
}
FTP上传 -首先上传文件到的那台电脑得安装ftp的更多相关文章
- Python_架构、同一台电脑上两个py文件通信、两台电脑如何通信、几十台电脑如何通信、更多电脑之间的通信、库、端口号
1.架构 C/S架构(鼻祖) C:client 客户端 S:server 服务器 早期使用的一种架构,目前的各种app使用的就是这种架构,它的表现形式就是拥有专门的app. B/S架构(隶属于C/ ...
- socket实现两台FTP服务器指定目录下的文件转移(不依赖第三方jar包)
通过socket实现两台FTP服务器指定目录下的文件转移,其中包含了基础了ftp文件列表显示.上传和下载.这里仅供学习用,需掌握的点有socket.ftp命令.文件流读取转换等 完整代码如下: Ftp ...
- 未能同步 iPhone XXX,因为这台电脑不再被授权使用在此iPhone上购买的项目。
打包生成的ipa文件,安装到手机上,p12和ppf证书都正确,手机的udid也正确.用itunes安装到手机报错. 未能同步 iPhone XXX,因为这台电脑不再被授权使用在此iPhone上购买的项 ...
- 怎么在一台电脑上安装win7与centos7双系统
对于用习惯windows系统的小伙伴们来说,好像Linux系统的命令操作感觉会比较神秘,进而有部分小伙伴就想说也学一学LInux操作系统.但是苦于资源的问题--就一台计算机,一块硬盘,担心说如果安装了 ...
- 一台电脑上配置多个git的ssh key
前几天公司的代码库全部迁移到了阿里云上,在配置git的ssh key的时候遇到了一个问题,那就是自己的密钥在添加时提示已经存在,原来是自己的个人账号上已经添加过这个密钥了,公司分配的账号就不能再添加这 ...
- Jenkins通过FTP上传站点太多文件导致太慢且不稳定,切换为压包上传再解压的思路(asp.net)
在本地先处理好要上传的站点文件之后,可能会因为一些网页切图导致ftp上传不稳定,中断,或者文件占用的问题. 那么换了一种实现思路,要借助jenkins的工具jenkins-cli.jar. 解决思路: ...
- 在Window的IIS中创建FTP的Site并用C#进行文件的上传下载
文件传输协议 (FTP) 是一个标准协议,可用来通过 Internet 将文件从一台计算机移到另一台计算机. 这些文件存储在运行 FTP 服务器软件的服务器计算机上. 然后,远程计算机可以使用 FTP ...
- 20160113006 asp.net实现ftp上传代码(解决大文件上传问题)
using System;using System.Configuration;using System.Data;using System.Linq;using System.Web;using S ...
- 创建FTP的Site并用C#进行文件的上传下载
创建FTP的Site并用C#进行文件的上传下载 文件传输协议 (FTP) 是一个标准协议,可用来通过 Internet 将文件从一台计算机移到另一台计算机. 这些文件存储在运行 FTP 服务器软件的服 ...
随机推荐
- 【Inno Setup】查看是否安装了VC++ 2015 Redistributeable
可能有必要先测一下注册表的这一项是否存在 if RegValueExists(HKLM, 'SOFTWARE\WOW6432Node\Microsoft\VisualStudio\14.0\VC\Ru ...
- [Qt] QProcess::startDetached() 避免弹窗,或者窗口一闪而过
主动宣告setProcessState(QProcess::NotRunning) 或者在堆上new一个QProcess. 出处: https://stackoverflow.com/q ...
- java 8中 predicate chain的使用
目录 简介 基本使用 使用多个Filter 使用复合Predicate 组合Predicate Predicate的集合操作 总结 java 8中 predicate chain的使用 简介 Pred ...
- hdu_1052 Tian Ji -- The Horse Racing 贪心
Tian Ji -- The Horse Racing Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (J ...
- webpack4.x下babel的安装、配置及使用
前言 目前,ES6(ES2015)这样的语法已经得到很大规模的应用,它具有更加简洁.功能更加强大的特点,实际项目中很可能会使用采用了ES6语法的模块,但浏览器对于ES6语法的支持并不完善.为了实现兼容 ...
- PHP字符串全排列算法
<?php /** * PHP字符串全排列算法 */ $results = []; $arr = []; function bfs($start) { global $arr; global $ ...
- Jmeter的简单使用
前言 对于jmeter的使用有很多内容,本章节只是简单介绍jmeter的两个方面的内容:一个是使用jmeter模拟postman发送http请求,一个是使用jmete进行压力测试. 更多的内容请参考官 ...
- abp(net core)+easyui+efcore实现仓储管理系统——入库管理之十一(四十七)
abp(net core)+easyui+efcore实现仓储管理系统目录 abp(net core)+easyui+efcore实现仓储管理系统——ABP总体介绍(一) abp(net core)+ ...
- QtCreator中使用链接库
说明 之前讨论的DLL的静态链接和动态连接都是基于 MSVC 编译器,但是 MinGW 似乎有另外一套类似但是不相同的机制.下文均在 windows 下使用 Qt Creator 中使用 MinGW ...
- js数据类型很简单,却也不简单
最近脑子里有冒出"多看点书"的想法,但我个人不是很喜欢翻阅纸质书籍,另一方面也是因为我能抽出来看书的时间比较琐碎,所以就干脆用app看电子书了(如果有比较完整的阅读时间,还是建议看 ...