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 AJAX实例根据邮编自动完成地址信息
Nov 23 PHP
Zend framework处理一个http请求的流程分析
Feb 08 PHP
php class中self,parent,this的区别以及实例介绍
Apr 24 PHP
浅析PHP页面局部刷新功能的实现小结
Jun 21 PHP
php sybase_fetch_array使用方法
Apr 15 PHP
一个严格的PHP Session会话超时时间设置方法
Jun 10 PHP
探寻PHP脚本不报错的原因
Jun 12 PHP
Linux下PHP加速器APC的安装与配置笔记
Oct 24 PHP
php实现Mongodb自定义方式生成自增ID的方法
Mar 23 PHP
php 输出json及显示json中的中文汉字详解及实例
Nov 09 PHP
php处理抢购类功能的高并发请求
Feb 08 PHP
laravel 配置路由 api和web定义的路由的区别详解
Sep 03 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
PHP 二维数组根据某个字段排序的具体实现
2014/06/03 PHP
页面利用渐进式JPEG来提升用户体验度
2014/12/01 PHP
PHP中str_split()函数的用法讲解
2019/04/11 PHP
PHP命名空间定义与用法实例分析
2019/08/14 PHP
VSCode+PHPstudy配置PHP开发环境的步骤详解
2020/08/20 PHP
背景音乐每次刷新都可以自动更换
2007/02/01 Javascript
Javascript 获取滚动条位置等信息的函数
2009/09/08 Javascript
js 绑定带参数的事件以及手动触发事件
2010/04/27 Javascript
20行代码实现的一个CSS覆盖率测试脚本
2013/07/07 Javascript
使用jquery的ajax需要注意的地方dataType的设置
2013/08/12 Javascript
jQuery中的pushStack实现原理和应用实例
2015/02/03 Javascript
JS点击链接后慢慢展开隐藏着图片的方法
2015/02/17 Javascript
jQuery常用数据处理方法小结
2015/02/20 Javascript
javascript数组去重方法汇总
2015/04/23 Javascript
js判断手机端(Android手机还是iPhone手机)
2015/07/22 Javascript
10个最优秀的Node.js MVC框架
2017/08/24 Javascript
初探js和简单隐藏效果的实例
2017/11/23 Javascript
vue如何引入sass全局变量
2018/06/28 Javascript
详解Eslint 配置及规则说明
2018/09/10 Javascript
详解在不使用ssr的情况下解决Vue单页面SEO问题
2018/11/08 Javascript
微信小程序简单的canvas裁剪图片功能详解
2019/07/12 Javascript
使用Python发送邮件附件以定时备份MySQL的教程
2015/04/25 Python
基于wxpython开发的简单gui计算器实例
2015/05/30 Python
python过滤字符串中不属于指定集合中字符的类实例
2015/06/30 Python
python numpy 反转 reverse示例
2019/12/04 Python
css3实现一个div设置多张背景图片及background-image属性实例演示
2017/08/10 HTML / CSS
泰国办公用品购物网站:OfficeMate
2018/02/04 全球购物
机械系大学毕业生推荐信
2013/11/27 职场文书
工业学校毕业生自荐书
2014/01/03 职场文书
大学生学业生涯规划
2014/01/05 职场文书
银行职员工作失误检讨书
2014/10/14 职场文书
2015年社区服务活动总结
2015/03/25 职场文书
暗恋桃花源观后感
2015/06/12 职场文书
婚礼长辈答谢词
2015/09/29 职场文书
创业计划书之网吧
2019/10/10 职场文书
HTML中link标签属性的具体用法
2023/05/07 HTML / CSS