php文件上传原理是通过form表单的enctype="multipart/form-data"属性将文件临时放到wamp文件夹中的tmp目录下,再通过后台php程序将文件保存在体统中。

html代码:

后台处理界面(shangchuan.php):

有以下几点需要注意:

1.控制上传文件的类型

2.控制上传文件的大小

3.防止文件名重复

修改保存的文件名

用户名+时间戳+随机数+文件名

流水号

使用文件夹要提前建好路径。

4.保存文件

//判断文件上传是否出错

if($_FILES["file"]["error"])

{

echo $_FILES["file"]["error"];

}

else

{

//控制上传文件的类型,大小

if(($_FILES["file"]["type"]=="image/jpeg" || $_FILES["file"]["type"]=="image/png") && $_FILES["file"]["size"]<1024000)

{

//找到文件存放的位置

$filename = "./file/".date("YmdHis").$_FILES["file"]["name"];

//转换编码格式

$filename = iconv("UTF-8","gb2312",$filename);

//判断文件是否存在

if(file_exists($filename))

{

echo "该文件已存在!";

}

else

{

//保存文件

move_uploaded_file($_FILES["file"]["tmp_name"],$filename);

}

}

else

{

echo "文件类型不正确!";

}

}

点击上传后文件就保存在系统的指定路径下。

保存后按照指定方法重命名文件名:

头像上传预览

原理:在html界面做一个头像大小的div,设置上传头像的背景,在div里面做一个上传文件的input,透明度设置为0.

这样,点击这个div就可以跟上传的效果相同。

无标题文档

#yl{ width:200px; height:300px; background-image:url(img/11.png); background-size:200px 300px;}

#file{ width:200px; height:300px; float:left; opacity:0;}

//回调函数,调用该方法传一个文件路径,该变背景图

function showimg(url)

{

var div = document.getElementById("yl");

div.style.backgroundImage = "url("+url+")";

document.getElementById("tp").value = url;

}

php上传头像的代码,php实现文件上传及头像预览功能相关推荐

  1. 利用jquery.form.js实现Ajax无刷新图片上传及预览功能

    某些时候当我们做登记页面的时候可能需要上传图片,并实现即时预览的功能. 如果只是预览而不上传,可以使用ImagePreview来实现,方便简单.如果需要上传,那么你也可以使用uploadify无刷新上 ...

  2. asp.net实现ftp上传代码(解决大文件上传问题)

    asp.net实现ftp上传代码(解决大文件上传问题) 参考文章: (1)asp.net实现ftp上传代码(解决大文件上传问题) (2)https://www.cnblogs.com/LYunF/ar ...

  3. file上传代码 ios_iOS-实现文件上传下载

    iOS开发中会经常用到文件上传下载的功能,这篇文件将介绍一下使用asp.net webservice实现文件上传下载. 首先,让我们看下文件下载. 这里我们下载cnblogs上的一个zip文件.使用N ...

  4. 基于OkHttp 、Retrofit 、Volley 、RxJava、Novate多种网络框架整合的快速项目开发框架,一行代码实现Ftp文件上传、文件下载、文件删除和进度监听的工具类的使用

    基于OkHttp .Retrofit .Volley .RxJava.Novate多种网络框架整合的快速项目开发框架,Ftp文件上传.文件下载的工具类的使用. 依赖于Ftp的jar包,对上传.下载.删 ...

  5. html ajax 图片上传,Ajax实现图片上传并预览功能

    先给大家展示下效果图,大家感觉不错,请参考实现代码. 最近在使用ThinkPHP5开发项目中客户有一个需求是在图片上传时附带预览功能.虽然现在有很多的插件能实现,但是还是觉得自己写比较好.我们知道,图 ...

  6. 用openoffice+jodconverter+webuploader+pdf.js实现文件上传、在线预览功能

    一.背景 最近公司一个项目要实现一个文件上传以及多文档在线预览的功能,之前一直做无线工具开发的,没有涉及到这些东西.另外项目组缺java开发人员,而且自己也只是一个半吊子前端加小半吊子java开发人员 ...

  7. 微信小程序实现图片是上传、预览功能

    本文实例讲述了微信小程序实现图片上传.删除和预览功能的方法,分享给大家供大家参考,具体如下: 这里主要介绍一下微信小程序的图片上传图片删除和图片预览 1.可以调用相机也可以从本地相册选择 2.本地实现 ...

  8. 上传问题总结(文件大小检测,大文件上传)

    PHP上传问题总结(文件大小检测,大文件上传) 由于涉及到本地和服务器两方面的安全问题,所以基于input type="file"形式的页面文件上传一直处于一个很尴尬的位置.一方面 ...

  9. java批量上传图片_JAVA图片批量上传JS-带预览功能

    这篇文章就简单的介绍一个很好用的文件上传工具,批量带预览功能.直接贴代码吧,都有注释,很好理解. HTML页面 pageEncoding="UTF-8"%> 新增照片 var ...

最新文章

  1. 根据xml 文件生成 xsd文件 以及相关测试方法
  2. Unity3D提示“XX,some are mac os x (unix) and some are windows”
  3. 【HDOJ】4333 Revolving Digits
  4. SVN图标不能正常显示[转]
  5. html下纯JS实现图片压缩、预览、图片Base64转换
  6. cad文本改宋体字型lisp_CAD的40个常用命令和20个常见问题解决方法 撩妹必备技能...
  7. Spring Boot之基于Redis实现MyBatis查询缓存解决方案
  8. 防篡改对象之密封对象
  9. 【华为云技术分享】云小课 | 如何通过虚拟私有云保障服务安全
  10. Linux(五):Ubuntu 16.04 更改系统语言为简体中文(Chinese simplified)
  11. python的setting怎么找_python代码中使用settings
  12. 黑马程序员-OC-内存管理(非ARC模式下)
  13. JavaScript数组归并方法reduce
  14. Unity3DGUI:刚体碰撞及消息传递
  15. 若要调试此模块,请将其项目生成配置更改为“调试”模式。若要取消显示此消息,请禁用“启动时若没有用户代码则发出警告”调试器选项。...
  16. IE 浏览器重置方法
  17. 【模型选择】从0到1的数据价值实现需要数据分析师做些什么?
  18. 推荐系统的冷启动与效果评估
  19. 王的机器第一本书「快乐机器学习」飨你
  20. iPhone播放声音文件的例子

热门文章

  1. MSO5204B/泰克Tektronix MSO5204B示波器
  2. 时序预测 | MATLAB实现SARIMA时间序列预测
  3. FineBI连接数据库,查询写sql不能写汉子解决办法
  4. 数字图像处理学习笔记(十八)实现图像的离散余弦变换
  5. JAVA中implements实现多接口
  6. adminLTE 教程 -6 多box
  7. 去掉Android TextView 去掉内边距
  8. Vue入门,看完就会了!!!
  9. 三维点云学习(3)6- 实现K-Means
  10. php显示当前数据库名称