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编程网上资源导航
Oct 09 PHP
Content-type 的说明
Oct 09 PHP
php面向对象的方法重载两种版本比较
Sep 08 PHP
PHP IE中下载附件问题解决方法
Jan 07 PHP
浅谈PHP中单引号和双引号到底有啥区别呢?
Mar 04 PHP
php限制上传文件类型并保存上传文件的方法
Mar 13 PHP
使用Yii2实现主从数据库设置
Nov 20 PHP
thinkphp实现把数据库中的列的值存到下拉框中的方法
Jan 20 PHP
php 基础函数
Feb 10 PHP
PHP count()函数讲解
Feb 03 PHP
Linux下安装Memcached服务器和客户端与PHP使用示例
Apr 15 PHP
PHP架构及原理知识点详解
Dec 22 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
《斗罗大陆》六翼天使武魂最强,为什么老千家不是上三宗?
2020/03/02 国漫
Zend Framework入门教程之Zend_Registry组件用法详解
2016/12/09 PHP
PHP常用的三种设计模式
2017/02/17 PHP
php实现将二维关联数组转换成字符串的方法详解
2017/07/31 PHP
JavaScript Perfection kill 测试及答案
2010/03/23 Javascript
JQuery的一些小应用收集
2010/03/27 Javascript
30个让人兴奋的视差滚动(Parallax Scrolling)效果网站
2012/03/04 Javascript
用Jquery重写windows.alert方法实现思路
2013/04/03 Javascript
判断客户浏览器是否支持cookie的示例代码
2013/12/23 Javascript
javascript向后台传送相同属性的参数即数组参数
2014/02/17 Javascript
jQuery操作DOM之获取表单控件的值
2015/01/23 Javascript
简介可以自动完成UI的AngularJS工具angular-smarty
2015/06/23 Javascript
asp知识整理笔记3(问答模式)
2015/09/27 Javascript
JS延时器提示框的应用实例代码解析
2016/04/27 Javascript
Javascript简写条件语句(推荐)
2016/06/12 Javascript
JS使用正则表达式过滤多个词语并替换为相同长度星号的方法
2016/08/03 Javascript
推荐三款日期选择插件(My97DatePicker、jquery.datepicker、Mobiscroll)
2017/04/21 jQuery
Angular实现点击按钮后在上方显示输入内容的方法
2017/12/27 Javascript
解析Angular 2+ 样式绑定方式
2018/01/15 Javascript
vue下拉列表功能实例代码
2018/04/08 Javascript
vue组件的写法汇总
2018/04/12 Javascript
jQuery实现的两种简单弹窗效果示例
2018/04/18 jQuery
详解Angular6 热加载配置方案
2018/08/18 Javascript
js prototype深入理解及应用实例分析
2019/11/25 Javascript
用生成器来改写直接返回列表的函数方法
2017/05/25 Python
解决Python2.7中IDLE启动没有反应的问题
2018/11/30 Python
python绘制地震散点图
2019/06/18 Python
Python 使用 docopt 解析json参数文件过程讲解
2019/08/13 Python
python 实现矩阵填充0的例子
2019/11/29 Python
Python zip函数打包元素实例解析
2019/12/11 Python
Python GUI编程学习笔记之tkinter控件的介绍及基本使用方法详解
2020/03/30 Python
整理HTML5中支持的URL编码与字符编码
2016/02/23 HTML / CSS
给领导的感谢信范文
2015/01/23 职场文书
2016小学教师读书心得体会
2016/01/13 职场文书
python通过函数名调用函数的几种方法总结
2021/06/07 Python
Redis 彻底禁用RDB持久化操作
2021/07/09 Redis