php多个文件上传代码,PHP单文件上传类或多文件上传类源码

以下为引用的内容:

php文件:

代码:

//如果收到表单传来的参数,则进行上传处理,否则显示表单

if(isset($_FILES['uploadinput'])){

//建目录函数,其中参数$directoryName最后没有"/",

//要是有的话,以'/'打散为数组的时候,最后将会出现一个空值

function makeDirectory($directoryName) {

$directoryName = str_replace("\","/",$directoryName);

$dirNames = explode('/', $directoryName);

$total = count($dirNames) ;

$temp = '';

for($i=0; $i

$temp .= $dirNames[$i].'/';

if (!is_dir($temp)) {

$oldmask = umask(0);

if (!mkdir($temp, 0777)) exit("不能建立目录 $temp");

umask($oldmask);

}

}

return true;

}

if($_FILES['uploadinput']['name'] <> ""){

//包含上传文件类

require_once ('class_upload.php');

//设置文件上传目录

$savePath = "upload";

//创建目录

makeDirectory($savePath);

//允许的文件类型

$fileFormat = array('gif','jpg','jpge','png');

//文件大小限制,单位: Byte,1KB = 1000 Byte

//0 表示无限制,但受php.ini中upload_max_filesize设置影响

$maxSize = 0;

//覆盖原有文件吗? 0 不允许   1 允许

$overwrite = 0;

//初始化上传类

$f = new clsUpload( $savePath, $fileFormat, $maxSize, $overwrite);

//如果想生成缩略图,则调用成员函数 $f->setThumb();

//参数列表: setThumb($thumb, $thumbWidth = 0,$thumbHeight = 0)

//$thumb=1 表示要生成缩略图,不调用时,其值为 0

//$thumbWidth   缩略图宽,单位是像素(px),留空则使用默认值 130

//$thumbHeight 缩略图高,单位是像素(px),留空则使用默认值 130

$f->setThumb(1);

//参数中的uploadinput是表单中上传文件输入框input的名字

//后面的0表示不更改文件名,若为1,则由系统生成随机文件名

if (!$f->run('uploadinput',0)){

//通过$f->errmsg()只能得到最后一个出错的信息,

//详细的信息在$f->getInfo()中可以得到。

echo $f->errmsg()."

n";

}

//上传结果保存在数组returnArray中。

echo "

";

print_r($f->getInfo());

echo "

";

}

}else{

?>

Send this file:

}

//我们上传一个已经存在了的图片文件,

//一个正常的图片文件,和一个不允许上传的文件,

//输出结果如下

/*

The uploaded file is Unallowable!

Array

(

[0] => Array

(

[name] => boy.jpg

[saveName] => boy.jpg

[size] => 137

[type] => image/pjpeg

[error] => File exist already!

)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/287320.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《看聊天记录都学不会C语言?太菜了吧》(13)(9*9 乘法表)寻找电脑中的盲盒彩蛋

若是大一学子或者是真心想学习刚入门的小伙伴可以私聊我&#xff0c;若你是真心学习可以送你书籍&#xff0c;指导你学习&#xff0c;给予你目标方向的学习路线&#xff0c;无套路&#xff0c;博客为证。 本系列文章将会以通俗易懂的对话方式进行教学&#xff0c;对话中将涵盖…

Fragment使用--文章集锦

android使用Fragment实现底部菜单使用show()和hide()来切换以保持Fragment状态Android Fragment 真正的完全解析&#xff08;上&#xff09;Android Fragment实践(一)纠正对Fragment Transaction BackStack的误解多个Fragment 切换时不重新实例化Fragment详解之四——管理Fragm…

Android之在在EditText的xml里面配置了相关属性依然没有显示光标问题

1 问题 在EditText的xml里面配置了 android:cursorVisible"true" android:focusable"true" android:focusableInTouchMode"true" 依然没有光标显示 2 解决办法 直接在代码层控制&#xff0c;平且拉起键盘 fun showSoftInputFromWindow(activ…

【经典回放】多种语言系列数据结构线性表之二:链表

目录 1 链表结构设计 2 简单的链表测试 2 链表的组织和ADT设计 3 初始化有头结点链表 4 有头结点链表中追加一个结点(一行数据)

使用 Postman 实现 API 自动化测试

1背景介绍 相信大部分开发人员和测试人员对 postman 都十分熟悉&#xff0c;对于开发人员和测试人员而言&#xff0c;使用 postman 来编写和保存测试用例会是一种比较方便和熟悉的方式。但 postman 本身是一个图形化软件&#xff0c;相对较难或较麻烦&#xff08;如使用 …

php json -gt;访问,【转】Php+ajax+jsonp解决ajax跨域问题

首先&#xff1a;jsonp是json用来跨域的一个东西。原理是通过script标签的跨域特性来绕过同源策略。发送端&#xff1a;$.ajax({type : "post",url : "ajax.php",dataType : "jsonp",jsonp: "callback",//传递给请求处理程序或页面的&…

《看聊天记录都学不会Python到游戏实战?太菜了吧》(1)加载Python神器!亮剑!

本系列文章将会以通俗易懂的对话方式进行教学&#xff0c;对话中将涵盖了新手在学习中的一般问题。此系列将会持续更新&#xff0c;包括别的语言以及实战都将使用对话的方式进行教学&#xff0c;基础编程语言教学适用于零基础小白&#xff0c;之后实战课程也将会逐步更新。 若…

little tricks(持续更新)【python】

python中的list有reverse方法&#xff0c;但是字符串却没有&#xff0c;怎么办呢&#xff1f; csdn博主有列了几个方法&#xff0c;我觉得第一个最简单直接&#xff0c;str[::-1]搞定。 当然也有一种怪异的方法&#xff0c;我把字符串转为序列reverse一下&#xff0c;再转回来不…

Codeigniter 3 拓展HMVC

2019独角兽企业重金招聘Python工程师标准>>> 在Codeiniter&#xff08;以下统称CI&#xff09; 2.X版本中&#xff0c;我们就通过拓展核心类库实现了HMVC&#xff0c;但是同样的代码&#xff0c;拿到CI 3中&#xff0c;就很有可能不好用了。 ###拓展核心类库方式 官…

FPGA FIFO深度计算

转自&#xff1a;http://comm.chinaaet.com/adi/blogdetail/37555.html 首先&#xff0c;一定要理解清楚FIFO的应用场景&#xff0c;这个会直接关系到FIFO深度的计算&#xff0c;如果是面试官抛出的问题&#xff0c;那么有不清楚的地方&#xff0c;就应该进行询问。如果是笔试或…

玩转ASP.NET Core 6.0框架-序言

ASP.NET Core是微软提供的强大的web框架&#xff0c;它有很多潜在的强大而有用的功能。本专栏的目标是帮助您把框架的隐藏能力最大限度地发挥出来&#xff0c;让您能够按需定制ASP NET Core框架。本专栏提供了一种具体的操作和实现方法&#xff0c;可以让你在短时间尽可能地提高…

从C#开始的面向对象编程经典自学教程

1、C语言的时代 在C语言时代,可以认为那时的编程过程就是表格加工过程,也就是从A表格到B表格、再到C表格…..等等,这个过程中,计算机语言如何描述一个表格,成为计算机语言的关键。 对一个表格的分析可以发现:表格是两部分组成:表头和表格: 学生表 STUDENT 在这个表格…

Java之对List里面的对象名字进行模糊查询

1 问题 对list里面的对象名字进行模糊查询 2 解决办法 //即可以进行模糊匹配matcher.find()//匹配查询matcher.matches() /*** 模糊查询*/public static ArrayList<SearchBean> search(String name, List<SearchBean> list) {ArrayList<SearchBean> results…

《看聊天记录都学不会Python到游戏实战?太菜了吧》(2)在python中加号竟然如此善变

本系列文章将会以通俗易懂的对话方式进行教学&#xff0c;对话中将涵盖了新手在学习中的一般问题。此系列将会持续更新&#xff0c;包括别的语言以及实战都将使用对话的方式进行教学&#xff0c;基础编程语言教学适用于零基础小白&#xff0c;之后实战课程也将会逐步更新。 若…

mysql数据库rp集群,使用MySQL-Cluster搭建MySQL数据库集群

1、MySQL集群的作用&#xff1a;- 解决访问节点的单点故障- 数据存储节点的单点故障- 解决数据存储节点数据备份问题2、集群&#xff1a;使用一组服务器提供相同的服务3、关于MySQL-Cluster&#xff1a;MySQL官方提供的集群版本已集成标准版MySQL程序&#xff0c;可独立安装使用…

桌面虚拟化云技术将支撑数字化医院

桌面虚拟化云技术将支撑数字化医院 2013-12-04 10:32 现今医疗行业已经从医院——患者的二元关系走向从医院——患者——政府监督——医疗保险的多元关系&#xff0c;医疗体系需要更高效的运转&#xff0c;患者需要更好的就医体验&#xff0c;这使得医疗行业信息化建设的重要性…

Blazor University (23)路由 —— 路由参数

原文链接&#xff1a;https://blazor-university.com/routing/route-parameters/路由参数源代码[1]到目前为止&#xff0c;我们已经了解了如何将静态 URL 链接到 Blazor 组件。静态 URL 只对静态内容有用&#xff0c;如果我们希望同一个组件根据 URL 中的信息&#xff08;例如客…

【经典回放】多种语言系列数据结构算法:栈(C版)

本文采用C语言实现栈结构算法并举例应用。 一 栈的基本原理分析 作为栈这种数据结构,数据是进行所谓的先进后出操作,但栈在操作中,并不需要在中间插入删除操作、一般也不需要在进栈数据中查找什么,这种情况下,恰恰是顺序表可以完成的非常好的场合,所以栈经常是用一个简单…

Android之提示android.content.res.Resources$NotFoundException: Resource ID #0x7f08010a

1 问题 在我的oppo机器上面运行一个页面没有奔溃,但是在红米安卓5.1版本运行页面奔溃,奔溃信息如下 /Timeline(11600): Timeline: Activity_launch_request time:61313216 I/WtProcessController( 3721): FOREGROUND INFO: name=com.appsinnova.android.keepshare uid=1023…

《看聊天记录都学不会C语言?太菜了吧》(14)这么神奇?我写了20行代码竟然一行就可以搞定?

若是大一学子或者是真心想学习刚入门的小伙伴可以私聊我&#xff0c;若你是真心学习可以送你书籍&#xff0c;指导你学习&#xff0c;给予你目标方向的学习路线&#xff0c;无套路&#xff0c;博客为证。 本系列文章将会以通俗易懂的对话方式进行教学&#xff0c;对话中将涵盖…