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 相关文章推荐
web站点获取用户IP的安全方法 HTTP_X_FORWARDED_FOR检验
Jun 01 PHP
PHP在线生成二维码代码(google api)
Jun 03 PHP
php数组中删除元素之重新索引的方法
Sep 16 PHP
windows7下php开发环境搭建图文教程
Jan 06 PHP
php中实现获取随机数组列表的自定义函数
Apr 02 PHP
php打包压缩文件之ZipArchive方法用法分析
Apr 30 PHP
PHP输出图像imagegif、imagejpeg与imagepng函数用法分析
Nov 14 PHP
ThinkPHP中create()方法自动验证实例
Apr 26 PHP
利用phpexcel对数据库数据的导入excel(excel筛选)、导出excel
Apr 27 PHP
PHP实现的简单sha1加密功能示例
Aug 27 PHP
PHP实现微信商户支付企业付款到零钱功能
Sep 30 PHP
详解php中curl返回false的解决办法
Mar 18 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
Apache, PHP在Windows 9x/NT下的安装与配置 (一)
2006/10/09 PHP
用PHP与XML联手进行网站编程代码实例
2008/07/10 PHP
php通过ajax实现双击table修改内容
2014/04/28 PHP
php随机取mysql记录方法小结
2014/12/27 PHP
smarty模板引擎之分配数据类型
2015/03/30 PHP
php制作圆形用户头像的实例_自定义封装类源代码
2017/09/18 PHP
tp5框架基于Ajax实现列表无刷新排序功能示例
2020/02/10 PHP
分析 JavaScript 中令人困惑的变量赋值
2007/08/13 Javascript
淘宝网提供的国内NPM镜像简介和使用方法
2014/04/17 Javascript
jQuery获取动态生成的元素示例
2014/06/15 Javascript
原生Javascript封装的一个AJAX函数分享
2014/10/11 Javascript
javascript日期格式化方法小结
2015/12/17 Javascript
理解javascript中的严格模式
2016/02/01 Javascript
JavaScript性能优化总结之加载与执行
2016/08/11 Javascript
JS将unicode码转中文方法
2017/05/08 Javascript
Vue.js 实现微信公众号菜单编辑器功能(一)
2018/05/08 Javascript
layui多iframe页面控制定时器运行的方法
2019/09/05 Javascript
js实现百度淘宝搜索功能
2020/02/17 Javascript
python文件和目录操作函数小结
2014/07/11 Python
asyncio 的 coroutine对象 与 Future对象使用指南
2016/09/11 Python
使用python和Django完成博客数据库的迁移方法
2018/01/05 Python
django 多数据库配置教程
2018/05/30 Python
在自动化中用python实现键盘操作的方法详解
2019/07/19 Python
PyCharm第一次安装及使用教程
2020/01/08 Python
Tensorflow实现多GPU并行方式
2020/02/03 Python
pycharm 设置项目的根目录教程
2020/02/12 Python
HTML5手指下滑弹出负一屏阻止移动端浏览器内置下拉刷新功能的实现代码
2020/04/10 HTML / CSS
海淘零差价,宝贝全球购: 宝贝格子
2016/08/24 全球购物
阿迪达斯荷兰官方网站:adidas荷兰
2018/03/16 全球购物
英国家庭和商业健身器材购物网站:Fitness Options
2018/07/05 全球购物
英国美发和美容产品商城:HQhair
2019/02/08 全球购物
加拿大鞋网:Globo Shoes
2019/12/26 全球购物
心理学专业毕业生推荐信范文
2013/11/21 职场文书
Python实战之用tkinter库做一个鼠标模拟点击器
2021/04/27 Python
Nginx location 和 proxy_pass路径配置问题小结
2021/09/04 Servers
ajax请求前端跨域问题原因及解决方案
2021/10/16 Javascript