文档章节

php_文件上传学习

z
 zjnn
发布于 2017/04/03 23:52
字数 365
阅读 4
收藏 0
点赞 0
评论 0

文件上传

文件上传通过html文件中的表单进行上传;

<form action="1.php" method="post" enctype="multipart/form-data">
<p><input type="file" name="pic" /></p>
<p><input type="submit" value=" 提交 " /></p>
</form>

注意写上传表单时,form中必须写:enctype="multipart/form-data";

表单提交到php页面后,可以通过超全局变量$_FILES,进行获取提交文件的信息;

查看这个超全局变量可以看出得到一个数组;

$_FILES['pic']['name']:原始文件名

$_FILES['pic']['type']:文件类型

$_FILES['pic']['tmp_name']:临时文件

$_FILES['pic']['error']:错误代码,0为无错误

$_FILES['pic']['size']:文件大小(字节)

我们需要获取的这个文件存在与临时文件中,在php文件结束后就会删除,使用$_FILES['pic']['tmp_name']来获取临时文件及其位置,使用move_uploaded_file('文件的位置','文件移动到的位置');来获取表单提交到php文件中的文件,并将其存放到指定位置。

生成随机文件名并按日期存储

//生成随机文件名

$fname = rand(10000,99999);

//获取文件后缀

$ext = strrchr($_FILES['pic']['name'],'.');

//连接创建目录

$path = './'.date('Y/m/d');

if(!is_dir($path)){

        mkdir($path,0777,true);

}

//mkdir的参数2为最高级权限,参数3为true表示进行联级创建,默认为false

//此时新的目录为$path .'/'. $fname . $ext

str_shuffle();:将字符串进行打乱

substr(str,0,num);:将字符串从0开始截取num个长度

© 著作权归作者所有

共有 人打赏支持
z
粉丝 0
博文 24
码字总数 15955
作品 0
淮南
程序员
从0到1学习网络安全 【Web安全入门篇-上传漏洞】

简介 这个漏洞在DVBBS6.0时代被黑客们利用的最为猖獗,利用上传漏洞可以直接得到WEBSHELL,危害等级超级高,现在的入侵中上传漏洞也是常见的漏洞。 导致该漏洞的原因在于代码作者没有对访客提...

ihacker ⋅ 05/23 ⋅ 0

PHP之微信JSSDK图片上传预览下载到服务器

1.投票报名 主要实现报名功能 (1)form表单布局 3.微信JSSDK图片上传功能 3.1 jssdk.php jsapiticket.php accesstoken.php 放在项目文件下 3.2获取wx.config所需要的信息 页面中添加如下代码...

bengozhong ⋅ 2016/11/03 ⋅ 0

PHP.INI配置:文件上传功能配置教程

昨天分享了在PHP网站开发中如何在php.ini中配置实现session功能的PHP教程,今天继续分享在利用PHP实现文件上传功能时几点关键php.ini的配置。   说到在php.ini中的文件上传的配置,其实在之...

张志浩 ⋅ 2012/10/08 ⋅ 0

解决phpmyadmin上传文件大小限制的配置方法

解决phpmyadmin上传文件大小限制的配置方法  phpmyadmin导入SQL文件时涉及到phpmyadmin上传文件大小限制问题,默认phpmyadmin上传文件大小为2M,如果想要phpmyadmin上传超过2M大文件,就需要...

喵王不瞌睡 ⋅ 2014/10/29 ⋅ 0

从0到1学习网络安全 【Web安全入门篇-文件包含漏洞】

概述 程序开发人员通常会把可重复使用的函数写到单个文件中,在使用某个函数时,直接调用此文件,无需再次编写,这种调用文件的过程一般被称为包含。 程序开发人员都希望代码更加灵活,所以通...

i_China ⋅ 05/28 ⋅ 0

08-05更新ThinkPHP+swfupload多图上传实例 经典实用的php多图上传

先上一张图片给大家看看效果,有需要就下载学习。不一定非要在ThinkPHP里,只是我非常喜欢去用ThinkPHP做开发了。 好了。现在咱们需要的东西是,下载一个swfupload.js网上很多,自己百度吧....

3147972 ⋅ 2014/03/21 ⋅ 0

CKFinder根据用户设置权限,不同用户有自己的私有的、独立的文件夹

CKFinder 默认情况下多个用户共用同一个图片目录。所有上传的图片和Flash全部保存在同一个文件夹(默认为 userfiles)内。 现在想实现: 第1个需求:不同用户有自己的私有的、独立的文件夹;...

随智阔 ⋅ 2013/07/09 ⋅ 0

课廊漏洞,课廊1.8.9 漏洞后台拿shell

课廊1.8.9 漏洞后台拿shell.课廊1.8.9是课廊1.8.8的升级版本, 主要是增加了包括本站提供的中文等语言文件、 修复一些安全问题、补充论坛帖子的删除功能以及输出练习或下载作业时中断的问题等...

isolated ⋅ 2011/01/03 ⋅ 0

manatea/damafun

简介 damafun 是个人用于学习php而开发的弹幕视频平台,平台采用了FFMPEG转码技术以及CCL核心弹幕库插件。 安装须知 项目基于thinkphp3.2.2平台,需要php5.3及以上版本。 1.已编译过的ffmpe...

manatea ⋅ 2015/11/03 ⋅ 0

Web-安全-学习资料(很全)​

看原文 看原文 看原文 Web-安全-学习资料(很全) Web-Security-Learning 在学习web安全的过程中整合的一些资料。 该repo会不断更新,最近更新日期为:2017/9/19。 9月19日更新: 新收录文章...

Ho0oH ⋅ 2017/09/26 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Java Web如何操作Cookie的添加修改和删除

创建Cookie对象 Cookie cookie = new Cookie("id", "1"); 修改Cookie值 cookie.setValue("2"); 设置Cookie有效期和删除Cookie cookie.setMaxAge(24*60*60); // Cookie有效时间 co......

二营长意大利炮 ⋅ 今天 ⋅ 0

【每天一个JQuery特效】淡入淡出显示或隐藏窗口

我是JQuery新手爱好者,有时间就练练代码,防止手生,争取每天一个JQuery练习,在这个博客记录下学习的笔记。 本特效主要采用fadeIn()和fadeOut()方法显示淡入淡出的显示效果显示或隐藏元...

Rhymo-Wu ⋅ 今天 ⋅ 0

Spring JDBC使用方法

普通实现: 1、创建数据表customer。 可以使用任何数据库实现,在项目中要引入相应数据库驱动包并配置相应数据库连接。 2、创建Customer pojo。 Customer类的属性对应数据库的属性,除了为每...

霍淇滨 ⋅ 今天 ⋅ 0

Contos 7 安装Jenkins

Jenkins是一款能提高效率的软件,它能帮你把软件开发过程形成工作流,典型的工作流包括以下几个步骤 开发 提交 编译 测试 发布 有了Jenkins的帮助,在这5步中,除了第1步,后续的4步都是自动...

欧虞山 ⋅ 今天 ⋅ 0

revel

revel install go get github.com/revel/revelgo get github.com/revel/cmd create new app revel new git.oschina.net/zdglf/myapp run app revel run git.oschina.net/zdglf/myapp ot......

zdglf ⋅ 今天 ⋅ 0

49. Group Anagrams - LeetCode

Question 49. Group Anagrams Solution 思路:维护一个map,key是输入数组中的字符串(根据字符排好序) Java实现: public List<List<String>> groupAnagrams(String[] strs) { Map<Strin......

yysue ⋅ 今天 ⋅ 0

spring Email

使用spring发Email其实就是使用spring自己封装携带的一个javamail.JavaMailSenderImpl类而已。这个类可以当一个普通的java对象来使用,也可以通过把它配置变成spring Bean的方式然后注入使用...

BobwithB ⋅ 今天 ⋅ 0

spark 整理的一些知识

Spark 知识点 请描述spark RDD原理与特征? RDD全称是resilient distributed dataset(具有弹性的分布式数据集)。一个RDD仅仅是一个分布式的元素集合。在Spark中,所有工作都表示为创建新的...

tuoleisi77 ⋅ 今天 ⋅ 0

思考

时间一天天过感觉自己有在成长吗?最怕的是时光匆匆而过,自己没有收获!下面总结下最近自己的思考。 认识自己 认识另一个自己,人们常说要虚心听取别人意见和建议。然而人往往是很难做到的,...

hello_hp ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部