PHP 图片上传实现代码 带详细注释


Posted in PHP onApril 29, 2010
<?php 
//用户上传图片处理文件 
if ((($_FILES["file"]["type"] == "image/gif")|| ($_FILES["file"]["type"] == "image/jpeg")|| ($_FILES["file"]["type"] == "image/pjpeg"))&& ($_FILES["file"]["size"] < 100000)){ //控制允许上传的图片类型,最后的100000为允许的图片大小 
if ($_FILES["file"]["error"] > 0){ 
echo "Return Code: " . $_FILES["file"]["error"] . "<br />"; //出错返回 
}else{ 
/* //这是上传图片的信息,去掉前后的注释就可以看到效果. 
echo "Upload: " . $_FILES["file"]["name"] . "<br />"; 
echo "Type: " . $_FILES["file"]["type"] . "<br />"; 
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />"; 
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />"; */ 
if (file_exists("userupload/" . $_FILES["file"]["name"])){ 
echo $_FILES["file"]["name"] . " already exists. "; 
}else{ 
move_uploaded_file($_FILES["file"]["tmp_name"],"userupload/" . $_FILES["file"]["name"]); 
} $date=date('Ymdhis'); //得到当前时间,如;20070705163148 
$fileName=$_FILES['file']['name']; //得到上传文件的名字 
$name=explode('.',$fileName); //将文件名以'.'分割得到后缀名,得到一个数组 
$newPath=$date.'.'.$name[1]; //得到一个新的文件为'20070705163148.jpg',即新的路径 
$oldPath=$_FILES['file']['tmp_name']; //临时文件夹,即以前的路径 
rename("userupload/".$fileName,"userupload/".$newPath); 
//这里可以写你的SQL语句,图片的地址是 "userupload/".$newPath 
?> 
<script type="text/javascript">alert('图片上传成功!!');</script> 
<?php 
} 
}else{ 
echo "Invalid file"; //图片类型错误或者过大 
} 
?>
PHP 相关文章推荐
PHP 判断常量,变量和函数是否存在
Apr 26 PHP
黑夜路人出的几道php笔试题
Aug 04 PHP
php 冒泡排序 交换排序法
May 10 PHP
PHP setTime 设置当前时间的代码
Aug 27 PHP
PHP获取文件后缀名的三个函数
Oct 15 PHP
20个2014年最优秀的PHP框架回顾
Oct 22 PHP
试用php中oci8扩展
Jun 18 PHP
CodeIgniter扩展核心类实例详解
Jan 20 PHP
深入解析PHP的Yii框架中的event事件机制
Mar 17 PHP
Ajax+Jpgraph实现的动态折线图功能示例
Feb 11 PHP
实例化php类时传参的方法分析
Jun 05 PHP
phpStorm2020 注册码
Sep 17 PHP
PHP 字符串加密函数(在指定时间内加密还原字符串,超时无法还原)
Apr 28 #PHP
PHP中冒号、endif、endwhile、endfor使用介绍
Apr 28 #PHP
PHP 文件上传全攻略
Apr 28 #PHP
PHP GD 图像处理组件的常用函数总结
Apr 28 #PHP
PHP 开发环境配置(测试开发环境)
Apr 28 #PHP
PHP 开发环境配置(Zend Studio)
Apr 28 #PHP
PHP 开发环境配置(Zend Server安装)
Apr 28 #PHP
You might like
php的慢速日志引起的Mysql错误问题分析
2014/05/13 PHP
PHP框架Swoole定时器Timer特性分析
2014/08/19 PHP
PHP实现的贪婪算法实例
2017/10/17 PHP
Bootstrap+PHP实现多图上传功能实例详解
2018/04/08 PHP
PHP大文件分割分片上传实现代码
2020/12/09 PHP
js限制文本框为整数和货币的函数代码
2010/10/13 Javascript
基于jQuery的message插件实现右下角弹出消息框
2011/01/11 Javascript
javascript实现tabs选项卡切换效果(扩展版)
2013/03/19 Javascript
jquery实现文本框数量加减功能的例子分享
2014/05/10 Javascript
jquery操作HTML5 的data-*的用法实例分享
2014/08/17 Javascript
JavaScript异步加载浅析
2014/12/28 Javascript
jQuery中:radio选择器用法实例
2015/01/03 Javascript
使用AngularJS实现可伸缩的页面切换的方法
2015/06/19 Javascript
论JavaScript模块化编程
2016/03/07 Javascript
Highcharts学习之数据列
2016/08/03 Javascript
详解nodejs中exports和module.exports的区别
2017/02/17 NodeJs
jQuery自定义元素右键点击事件(实现案例)
2017/04/28 jQuery
vue.js添加一些触摸事件以及安装fastclick的实例
2018/08/28 Javascript
Vue-component全局注册实例
2018/09/06 Javascript
javascript创建元素和删除元素实例小结
2019/06/19 Javascript
Python常用小技巧总结
2015/06/01 Python
python更改已存在excel文件的方法
2018/05/03 Python
python实现windows下文件备份脚本
2018/05/27 Python
Python实现的银行系统模拟程序完整案例
2019/04/12 Python
Python3读取和写入excel表格数据的示例代码
2020/06/09 Python
利用python3筛选excel中特定的行(行值满足某个条件/行值属于某个集合)
2020/09/04 Python
python3中calendar返回某一时间点实例讲解
2020/11/18 Python
html5通过postMessage进行跨域通信的方法
2017/12/04 HTML / CSS
美国知名珠宝首饰品牌:Gemvara
2017/10/06 全球购物
法学专业个人求职信
2013/09/26 职场文书
软件工程师岗位职责
2013/11/16 职场文书
高中学校对照检查材料
2014/08/31 职场文书
教师个人年终总结
2015/02/11 职场文书
2015初中政教处工作总结
2015/07/21 职场文书
安全教育日主题班会
2015/08/13 职场文书
Opencv实现二维直方图的计算及绘制
2021/07/21 Python