php上传图片客户端和服务器端实现方法


Posted in PHP onMarch 30, 2015

本文实例讲述了php上传图片客户端和服务器端实现方法。分享给大家供大家参考。具体如下:

前台表单代码

<form name="form1" method="post" action="admin_upfile.php" enctype="multipart/form-data">
  <input type="file" name="pic">
  <input type="submit" name="Submit" value="开始上传" class="button">
</form>

后端php代码

<?php
//这里上传 $upsize判断上传文件的大小
$uppath = "/attached/"; //文件上传路径
//转换根目录的路径
if (strpos($uppath, "/") == 0)
{
  $i = 0;
  $thpath = $_SERVER["SCRIPT_NAME"];
  $thpath = substr($thpath, 1, strlen($thpath));
  while (strripos($thpath, "/") !== false)
  {
 $thpath = substr($thpath, strpos($thpath, "/") + 1, strlen($thpath));
 $i = ++$i;
  }
  $pp = "";
  for ($j = 0; $j < $i; ++$j)
  {
 $pp .= "../";
  }
  $uppaths = $pp . substr($uppath, 1, strlen($thpath));
}
$filename = date("y-m-d");
if (is_dir($uppaths . $filename) != TRUE)
  mkdir($uppaths . $filename, 0777);
$f = $_FILES['pic'];
if ($f["type"] != "image/gif" && $f["type"] != "image/pjpeg" && $f["type"] != "image/jpeg" && $f["type"] != "image/x-png")
{
  echo "<script>alert('只能上传图片格式的文件');window.close()</script>";
  return false;
}
//获得文件扩展名
$temp_arr = explode(".", $f["name"]);
$file_ext = array_pop($temp_arr);
$file_ext = trim($file_ext);
$file_ext = strtolower($file_ext);
//新文件名
$new_file_name = md5(date("YmdHis")) . '.' . $file_ext;
echo $dest = $uppaths . $filename . "/" . date("ymdhis") . "_" . 
$new_file_name; //设置文件名为日期加上文件名避免重复 上传目录
echo $dest1 = $uppath . $filename . "/" . date("ymdhis") . "_" . 
$new_file_name; //设置文件名为日期加上文件名避免重复
$r = move_uploaded_file($f['tmp_name'], $dest);
?>

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
利用递归把多维数组转为一维数组的函数
Oct 09 PHP
php环境配置 php5 mysql5 apache2 phpmyadmin安装与配置
Nov 17 PHP
php strlen mb_strlen计算中英文混排字符串长度
Jul 10 PHP
php函数之子字符串替换&amp;#65279; str_replace
Mar 23 PHP
PHP flock 文件锁详细介绍
Dec 29 PHP
PHP eval函数使用介绍
Dec 08 PHP
php实现统计网站在线人数的方法
May 12 PHP
thinkphp配置文件路径的实现方法
Aug 30 PHP
详解PHP编码转换函数应用技巧
Oct 22 PHP
php的4种常用运行方式详解
Dec 22 PHP
Laravel项目中timeAgo字段语言转换的改善方法示例
Sep 16 PHP
Laravel框架Blade模板简介及模板继承用法分析
Dec 03 PHP
php实现数组按指定KEY排序的方法
Mar 30 #PHP
php将图片保存为不同尺寸图片的图片类实例
Mar 30 #PHP
Linux系统下php获得系统分区信息的方法
Mar 30 #PHP
PHP连接操作access数据库实例
Mar 30 #PHP
php中使用sftp教程
Mar 30 #PHP
php计算一个文件大小的方法
Mar 30 #PHP
smarty模板引擎之内建函数用法
Mar 30 #PHP
You might like
模拟OICQ的实现思路和核心程序(一)
2006/10/09 PHP
Discuz 5.0 中读取纯真IP数据库函数分析
2007/03/16 PHP
php 获取页面中指定内容的实现类
2014/01/23 PHP
PHP给文字内容中的关键字进行套红处理
2016/04/12 PHP
Laravel的throttle中间件失效问题解决方法
2016/10/09 PHP
php实现数组纵向转横向并过滤重复值的方法分析
2017/05/29 PHP
php实现的三个常用加密解密功能函数示例
2017/11/06 PHP
十分钟打造AutoComplete自动完成效果代码
2009/12/26 Javascript
javaScript函数中执行C#代码中的函数方法总结
2013/08/07 Javascript
IE下window.onresize 多次调用与死循环bug处理方法介绍
2013/11/12 Javascript
JQuery与JS里submit()的区别示例介绍
2014/02/17 Javascript
DOM节点的替换或修改函数replaceChild()用法实例
2015/01/12 Javascript
原生javascript实现图片按钮切换
2015/01/12 Javascript
JavaScript常用本地对象小结
2016/03/28 Javascript
关于Sequelize连接查询时inlude中model和association的区别详解
2017/02/27 Javascript
深入理解ES7的async/await的用法
2017/09/09 Javascript
React+Antd+Redux实现待办事件的方法
2019/03/14 Javascript
聊聊Vue中provide/inject的应用详解
2019/11/10 Javascript
js实现验证码干扰(静态)
2021/02/22 Javascript
[02:19]DOTA2女子战队FOX视频专访:希望更多美眉一起加入
2013/10/15 DOTA
详解使用 pyenv 管理多个版本 python 环境
2017/10/19 Python
Django实现分页功能
2018/07/02 Python
python爬虫超时的处理的实例
2018/12/19 Python
Python3 SSH远程连接服务器的方法示例
2018/12/29 Python
Python3查找列表中重复元素的个数的3种方法详解
2020/02/13 Python
Python中如何添加自定义模块
2020/06/09 Python
appium+python自动化配置(adk、jdk、node.js)
2020/11/17 Python
Python的logging模块基本用法
2020/12/24 Python
Python基于mediainfo批量重命名图片文件
2020/12/29 Python
万得城电器土耳其网站:欧洲第一大电子产品零售商
2016/10/07 全球购物
上海期货面试题
2014/01/31 面试题
还款承诺书范文
2014/05/20 职场文书
初中政教处工作总结
2015/08/12 职场文书
创业计划书之电动车企业
2019/10/11 职场文书
MySQL 那些常见的错误设计规范,你都知道吗
2021/07/16 MySQL
使用Oracle命令进行数据库备份与还原
2021/12/06 Oracle