php上传图片之时间戳命名(保存路径)


Posted in PHP onAugust 15, 2014

html代码:

<div id="images" style="width:250px;height:120px;background:#fff;border:1px solid #ccc;">  
  <h2><strong>图片导入</strong></h2> 
  <form enctype="multipart/form-data" action="./includer/importimg.inc.php?action=img" method="post" name="imge">      
  <input type="hidden" name="MAX_FILE_SIZE" value="100000000" />
  <input value="导入文件" type="file" name="img" id="file"/><br/><br/>
  <input type="submit" id="imgbut" class="buttons" value="上传图片" />                                          
  </form> 
</div>

php代码:

<?php
/**
*Mwbe Version1.0
*-----------------------------------------------
*Copy 2013-2014 ylt
*Web: communicate
*-----------------------------------------------
*Author: tao *Data: 2014-7-22
*/
header("Content-Type:text/html;charset=utf-8");
//step 1 使用$_FILES['pic']["error"] 检查错误
if(isset($_GET["action"])=="img"){
if($_FILES["img"]["error"] > 0){
  switch($_FILES["img"]["error"]) {
  	case 1:
  	  echo "<script type='text/javascript'>alert('上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值<br>');history.back();</script>";
  	  break;
  	case 2:
  	  echo "<script type='text/javascript'>alert('上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值');history.back();</script>";
  	  break;
  	case 3:
  	  echo "<script type='text/javascript'>alert('文件只有部分被上传');history.back();</script>";
  	  break;
  	case 4:
  	  echo "<script type='text/javascript'>alert('没有文件被上传');history.back();</script>";
  	  break;
  	default:
  	  echo "<script type='text/javascript'>alert('末知错误');history.back();</script>";
  }
  exit;
}
$maxsize=2000000; //50k
//step 2 使用$_FILES["pic"]["size"] 限制大小 单位字节 2M=2000000
if($_FILES["img"]["size"] > $maxsize ) {
  echo "<script type='text/javascript'>alert('上传的文件太大,不能超过{$maxsize}字节');history.back();</script>";
  exit;
}
//step 3 使用$_FILES["pic"]["type"]或是文件的扩展名 限制类型 MIME image/gif image/png  gif png jpg
 /*  list($dl, $xl) = explode("/", $_FILES["pic"]["type"]);
 if($dl!="image"){
 echo "请上传一个图片,不充许其它类型文件";
 exit;
 }
 */
 $allowtype=array("png", "gif", "jpg", "jpeg");
 $arr=explode(".", $_FILES["img"]["name"]);
 $hz=$arr[count($arr)-1];
 if(!in_array($hz, $allowtype)){
 echo "<script type='text/javascript'>alert('这是不允许的类型');history.back();</script>";
		exit;
 }
 //step 4 将让传后的文件名改名
 $filepath="../imgweb/";
 $fileimgweb="imgweb/";//为了符合UBB的路径
	$randname=date("Y").date("m").date("d").date("H").date("i").date("s").rand(100, 999).".".$hz;
	  //将临时位置的文件移动到指定的目录上即可
	  if(is_uploaded_file($_FILES["img"]["tmp_name"])){
	    if(move_uploaded_file($_FILES["img"]["tmp_name"],$filepath.$randname)){
	      echo "<script type='text/javascript'>history.back();</script>";
	      session_start();
	      $_SESSION['images'] = $fileimgweb.$randname;
	      }else{
	      echo "<script type='text/javascript'>alert('上传失败');history.back();</script>";
	      }
	}else{
		echo"<script type='text/javascript'>alert('不是一个上传文件');history.back();</script>";
	}	
}
?>
PHP 相关文章推荐
PHP与SQL注入攻击防范小技巧
Sep 16 PHP
php+xml结合Ajax实现点赞功能完整实例
Jan 30 PHP
分享一则PHP定义函数代码
Feb 26 PHP
php实现的RSS生成类实例
Apr 23 PHP
php文件扩展名判断及获取文件扩展名的N种方法
Sep 12 PHP
php生成gif动画的方法
Nov 05 PHP
PHP利用正则表达式将相对路径转成绝对路径的方法示例
Feb 28 PHP
PHP获取文本框、密码域、按钮的值实例代码
Apr 19 PHP
自制PHP框架之路由与控制器
May 07 PHP
PHP批量删除jQuery操作
Jul 23 PHP
PHP使用 Imagick 扩展实现图片合成,圆角处理功能示例
Sep 09 PHP
PHP 命名空间和自动加载原理与用法实例分析
Apr 29 PHP
php中将一段数据存到一个txt文件中并显示其内容
Aug 15 #PHP
PHP反向代理类代码
Aug 15 #PHP
ThinkPHP中自定义目录结构的设置方法
Aug 15 #PHP
win7 64位系统 配置php最新版开发环境(php+Apache+mysql)
Aug 15 #PHP
php获取apk包信息的方法
Aug 15 #PHP
phpmyadmin出现Cannot start session without errors问题解决方法
Aug 14 #PHP
PHP解码unicode编码的中文字符代码分享
Aug 13 #PHP
You might like
zend framework多模块多布局配置
2011/02/26 PHP
PHP设计模式之调解者模式的深入解析
2013/06/13 PHP
php 邮件发送问题解决
2014/03/22 PHP
php微信公众平台开发(四)回复功能开发
2016/12/06 PHP
Yii框架安装简明教程
2020/05/15 PHP
javascript 操作cookies及正确使用cookies的属性
2009/10/15 Javascript
nodejs npm install全局安装和本地安装的区别
2014/06/05 NodeJs
jQuery层级选择器用法分析
2015/02/10 Javascript
javascript编程异常处理实例小结
2015/11/30 Javascript
js判断移动端是否安装某款app的多种方法
2015/12/18 Javascript
jQuery使用zTree插件实现树形菜单和异步加载
2016/02/25 Javascript
基于Javascript实现二级联动菜单效果
2016/03/04 Javascript
轮播的简单实现方法
2016/07/28 Javascript
详解JS中的柯里化(currying)
2017/08/17 Javascript
vue添加axios,并且指定baseurl的方法
2018/09/19 Javascript
react组件从搭建脚手架到在npm发布的步骤实现
2019/01/09 Javascript
mocha的时序规则讲解
2019/02/16 Javascript
layui-tree实现Ajax异步请求后动态添加节点的方法
2019/09/23 Javascript
nodeJs的安装与npm全局环境变量的配置详解
2020/01/06 NodeJs
原生JS实现萤火虫效果
2020/03/07 Javascript
python用于url解码和中文解析的小脚本(python url decoder)
2013/08/11 Python
Python排序算法实例代码
2017/08/10 Python
python实现监控某个服务 服务崩溃即发送邮件报告
2018/06/21 Python
详解centos7+django+python3+mysql+阿里云部署项目全流程
2019/11/15 Python
python基于property()函数定义属性
2020/01/22 Python
完美解决pycharm 不显示代码提示问题
2020/06/02 Python
如何在Win10系统使用Python3连接Hive
2020/10/15 Python
基于Python的接口自动化读写excel文件的方法
2021/01/15 Python
HTML5实现音频和视频嵌入的方法
2018/08/22 HTML / CSS
临床医学大学生求职信
2013/09/28 职场文书
求职简历自荐信
2013/10/20 职场文书
风雨哈佛路观后感
2015/06/03 职场文书
《金色的草地》教学反思
2016/02/17 职场文书
python 下划线的多种应用场景总结
2021/05/12 Python
十大最强奥特曼武器:怪兽战斗仪在榜,第五奥特之父只使用过一次
2022/03/18 日漫
Python find()、rfind()方法及作用
2022/12/24 Python