php 文件上传实例代码


Posted in PHP onApril 19, 2012

项目结构:

php 文件上传实例代码

上传首页:

php 文件上传实例代码

上传效果:

php 文件上传实例代码
fileupload.php

<form action="" enctype="multipart/form-data" method="post" 
name="uploadfile">上传文件:<input type="file" name="upfile" /><br> 
<input type="submit" value="上传" /></form> 
<?php 
//print_r($_FILES["upfile"]); 
if(is_uploaded_file($_FILES['upfile']['tmp_name'])){ 
$upfile=$_FILES["upfile"]; 
//获取数组里面的值 
$name=$upfile["name"];//上传文件的文件名 
$type=$upfile["type"];//上传文件的类型 
$size=$upfile["size"];//上传文件的大小 
$tmp_name=$upfile["tmp_name"];//上传文件的临时存放路径 
//判断是否为图片 
switch ($type){ 
case 'image/pjpeg':$okType=true; 
break; 
case 'image/jpeg':$okType=true; 
break; 
case 'image/gif':$okType=true; 
break; 
case 'image/png':$okType=true; 
break; 
} if($okType){ 
/** 
* 0:文件上传成功<br/> 
* 1:超过了文件大小,在php.ini文件中设置<br/> 
* 2:超过了文件的大小MAX_FILE_SIZE选项指定的值<br/> 
* 3:文件只有部分被上传<br/> 
* 4:没有文件被上传<br/> 
* 5:上传文件大小为0 
*/ 
$error=$upfile["error"];//上传后系统返回的值 
echo "================<br/>"; 
echo "上传文件名称是:".$name."<br/>"; 
echo "上传文件类型是:".$type."<br/>"; 
echo "上传文件大小是:".$size."<br/>"; 
echo "上传后系统返回的值是:".$error."<br/>"; 
echo "上传文件的临时存放路径是:".$tmp_name."<br/>"; 
echo "开始移动上传文件<br/>"; 
//把上传的临时文件移动到up目录下面 
move_uploaded_file($tmp_name,'up/'.$name); 
$destination="up/".$name; 
echo "================<br/>"; 
echo "上传信息:<br/>"; 
if($error==0){ 
echo "文件上传成功啦!"; 
echo "<br>图片预览:<br>"; 
echo "<img src=".$destination.">"; 
//echo " alt=\"图片预览:\r文件名:".$destination."\r上传时间:\">"; 
}elseif ($error==1){ 
echo "超过了文件大小,在php.ini文件中设置"; 
}elseif ($error==2){ 
echo "超过了文件的大小MAX_FILE_SIZE选项指定的值"; 
}elseif ($error==3){ 
echo "文件只有部分被上传"; 
}elseif ($error==4){ 
echo "没有文件被上传"; 
}else{ 
echo "上传文件大小为0"; 
} 
}else{ 
echo "请上传jpg,gif,png等格式的图片!"; 
} 
} 
?>

fileupload.php文件中:
//判断是否为图片 
switch ($type){ 
case 'image/pjpeg':$okType=true; 
break; 
case 'image/jpeg':$okType=true; 
break; 
case 'image/gif':$okType=true; 
break; 
case 'image/png':$okType=true; 
break; 
}

上面是判断文件是否是图片类型,更多的文件类型,大家可以参考tomcat/conf/web.xml文件,这里面的文件类型很全....
PHP 相关文章推荐
php实现mysql数据库备份类
Mar 20 PHP
php 特殊字符处理函数
Sep 05 PHP
PHP iconv 解决utf-8和gb2312编码转换问题
Apr 12 PHP
setcookie中Cannot modify header information-headers already sent by错误的解决方法详解
May 08 PHP
php获取网页标题和内容函数(不包含html标签)
Feb 03 PHP
php和jquery实现地图区域数据统计展示数据示例
Feb 12 PHP
PHP彩蛋信息介绍和阻止泄漏的方法(隐藏功能)
Aug 06 PHP
Windows下的PHP安装pear教程
Oct 24 PHP
PHP使用数组依次替换字符串中匹配项
Jan 08 PHP
phalcon框架使用指南
Feb 23 PHP
PHP实现动态执行代码的方法
Mar 25 PHP
PHP的mysqli_ssl_set()函数讲解
Jan 23 PHP
php开发留言板的CRUD(增,删,改,查)操作
Apr 19 #PHP
php和mysql中uft-8中文编码乱码的几种解决办法
Apr 19 #PHP
php递归创建和删除文件夹的代码小结
Apr 13 #PHP
redis 队列操作的例子(php)
Apr 12 #PHP
PHP得到某段时间区间的时间戳 php定时任务
Apr 12 #PHP
比较好用的PHP防注入漏洞过滤函数代码
Apr 11 #PHP
PHP 杂谈《重构-改善既有代码的设计》之四 简化条件表达式
Apr 09 #PHP
You might like
php selectradio和checkbox默认选择的实现方法详解
2013/06/29 PHP
深入解析WordPress中加载模板的get_template_part函数
2016/01/11 PHP
PHP递归的三种常用方式
2019/02/28 PHP
《JavaScript高级程序设计》阅读笔记(一) ECMAScript基础
2012/02/27 Javascript
使用jquery获取网页中图片高度的两种方法
2013/09/26 Javascript
通过遮罩层实现浮层DIV登录的js代码
2014/02/07 Javascript
jQuery实现菜单感应鼠标滑动动画效果的方法
2015/02/28 Javascript
JavaScript学习笔记之惰性函数示例详解
2017/08/27 Javascript
vue路由导航守卫和请求拦截以及基于node的token认证的方法
2019/04/07 Javascript
vue v-on:click传递动态参数的步骤
2020/09/11 Javascript
python继承和抽象类的实现方法
2015/01/14 Python
python如何通过protobuf实现rpc
2016/03/06 Python
浅谈python中copy和deepcopy中的区别
2017/10/23 Python
详解python的ORM中Pony用法
2018/02/09 Python
在PyCharm中批量查找及替换的方法
2019/01/20 Python
Python 限制线程的最大数量的方法(Semaphore)
2019/02/22 Python
Python 共享变量加锁、释放详解
2019/08/28 Python
tensorflow之并行读入数据详解
2020/02/05 Python
Manjaro、pip、conda更换国内源的方法
2020/11/17 Python
Python3.8.2安装包及安装教程图文详解(附安装包)
2020/11/28 Python
基于CSS3特效之动画:animation的应用
2013/05/09 HTML / CSS
美国酒店控股公司:Choice Hotels
2018/06/15 全球购物
施华洛世奇巴西官网:SWAROVSKI巴西
2019/12/03 全球购物
澳大利亚在线划船、露营和钓鱼商店:BCF Australia
2020/03/22 全球购物
水务局局长岗位职责
2013/11/28 职场文书
总经理司机岗位职责
2014/02/06 职场文书
廉洁教育学习材料
2014/05/19 职场文书
幼儿园清明节活动总结
2014/07/04 职场文书
新闻学专业求职信
2014/07/28 职场文书
实现中国梦思想汇报2014
2014/09/13 职场文书
2014财务人员自我评价范文
2014/09/21 职场文书
2014年文明创建工作总结
2014/11/25 职场文书
工程技术员岗位职责
2015/04/11 职场文书
服务行业标语口号
2015/12/26 职场文书
Tensorflow与RNN、双向LSTM等的踩坑记录及解决
2021/05/31 Python
解析高可用Redis服务架构分析与搭建方案
2021/06/20 Redis