php+ajax 文件上传代码实例


Posted in PHP onMarch 18, 2019

本文实例为大家分享了php+ajax 文件上传的具体代码,供大家参考,具体内容如下

html 代码

<form action="{pboot:form fcode=8}" method="post" id="t" enctype="multipart/form-data">
<input type="file" name='tables_a' id="tables" onchange="abs()">
<input type="hidden" name='tables' id='tables_2'>
<input type="submit" value="提交">
</form>

项目使用的是pbootCMS 所以地址可忽略
enctype="multipart/form-data"因为设计到文件上传必须在from 表单中添加该属性

js代码 

function abs(){
 var fileArray = document.getElementById('tables').files[0];
 var formData = new FormData();
 formData.append("fileArray", fileArray)
 $.ajax({
  url: "{pboot:httpurl}/api.php/Tables/index",//传向后台服务器文件
  type: 'POST', //传递方法
  data: formData, //传递的数据
  dataType : 'json', //传递数据的格式
  async:false, //这是重要的一步,防止重复提交的     
  cache: false, //设置为false,上传文件不需要缓存。
  contentType: false,//设置为false,因为是构造的FormData对象,所以这里设置为false。
  processData: false,//设置为false,因为data值是FormData对象,不需要对数据做处理。
  success: function (responseStr){
   if(responseStr.code != 0){
    alert('上传成功');
    $('#tables_2').val('{pboot:httpurl}'+responseStr.data);
   }else{
    alert('上传失败');
   }
  },
  error: function () {
   alert("上传错误!");
  }
 });
}

PHP代码

public function index()
{
 $name = $_FILES['fileArray']['name'];
 $last = substr($name,strrpos($name,'.'));
 $name = date('YmdHis').rand(10000,99999).$last;
 $address = ROOT_PATH.'/upload/'.$name;
 if(move_uploaded_file($_FILES['fileArray']['tmp_name'],$address)){
  return json(1,'/upload/'.$name);
 }else{
  return json(0);
 }
}

$_FILES['fileArray']['tmp_name']   是文件的临时存储位置,所以直接将他移动过去就好了

以上所述是小编给大家介绍的php+ajax的文件上传详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
计数器详细设计
Oct 09 PHP
php XMLWriter类的简单示例代码(RSS输出)
Sep 30 PHP
PHP运行SVN命令显示某用户的文件更新记录的代码
Jan 03 PHP
php阻止页面后退的方法分享
Feb 17 PHP
php curl 上传文件代码实例
Apr 27 PHP
PHP中iconv函数知识汇总
Jul 02 PHP
PHP生成随机密码方法汇总
Aug 27 PHP
PHP图形操作之Jpgraph学习笔记
Dec 25 PHP
使用PHP如何实现高效安全的ftp服务器(二)
Dec 30 PHP
php 数组随机取值的简单实例
May 23 PHP
php中str_pad()函数用法分析
Mar 28 PHP
php 实现简单的登录功能示例【基于thinkPHP框架】
Dec 02 PHP
PHP中单例模式的使用场景与使用方法讲解
Mar 18 #PHP
详解php中curl返回false的解决办法
Mar 18 #PHP
浅谈PHP SHA1withRSA加密生成签名及验签
Mar 18 #PHP
PHP自动生成缩略图函数的源码示例
Mar 18 #PHP
PHP添加文字水印或图片水印的水印类完整源代码与使用示例
Mar 18 #PHP
PHP实现对数字分隔加千分号的方法
Mar 18 #PHP
PHP生成指定范围内的N个不重复的随机数
Mar 18 #PHP
You might like
centos 5.6 升级php到5.3的方法
2011/05/14 PHP
Smarty实现页面静态化(生成HTML)的方法
2016/05/23 PHP
使用JavaScript创建新样式表和新样式规则
2016/06/14 PHP
php版交通银行网银支付接口开发入门教程
2016/09/26 PHP
PHP简单装饰器模式实现与用法示例
2017/06/22 PHP
php高性能日志系统 seaslog 的安装与使用方法分析
2020/02/29 PHP
Firefox下提示illegal character并出现乱码的原因
2010/03/25 Javascript
JS延迟加载(setTimeout) JS最后加载
2010/07/15 Javascript
js 有框架页面跳转(target)三种情况下的应用
2013/04/09 Javascript
javascript检测对象中是否存在某个属性判断方法小结
2013/05/19 Javascript
JavaScript实现MIPS乘法模拟的方法
2015/04/17 Javascript
JavaScript tab选项卡插件实例代码
2016/02/23 Javascript
js方法数据验证的简单实例
2016/09/17 Javascript
利用JS如何计算字符串所占字节数示例代码
2017/09/13 Javascript
简单理解Vue中的nextTick方法
2018/01/30 Javascript
layui之select的option叠加问题的解决方法
2018/03/08 Javascript
在layui中select更改后生效的方法
2019/09/05 Javascript
[51:43]OG vs LGD 2018国际邀请赛淘汰赛BO3 第五场 8.26
2018/08/30 DOTA
python3.4下django集成使用xadmin后台的方法
2017/08/15 Python
Python Django框架防御CSRF攻击的方法分析
2019/10/18 Python
python 统计文件中的字符串数目示例
2019/12/24 Python
Python模块future用法原理详解
2020/01/20 Python
Python Opencv图像处理基本操作代码详解
2020/08/31 Python
Biblibili视频投稿接口分析并以Python实现自动投稿功能
2021/02/05 Python
HTML5画渐变背景图片并自动下载实现步骤
2013/11/18 HTML / CSS
全球知名的珠宝首饰品牌:Kay Jewelers
2018/02/11 全球购物
雷朋巴西官方商店:Ray-Ban Brasil
2020/07/21 全球购物
应用化学专业本科生求职信
2013/09/29 职场文书
酒店管理毕业生自我鉴定
2014/03/02 职场文书
社区党员志愿服务活动方案
2014/08/18 职场文书
委托培训协议书
2014/11/17 职场文书
行为规范主题班会
2015/08/13 职场文书
2016年小学推普宣传周活动总结
2016/04/06 职场文书
详细聊聊MySQL中慢SQL优化的方向
2021/08/30 MySQL
全面盘点MySQL中的那些重要日志文件
2021/11/27 MySQL
vscode内网访问服务器的方法
2022/06/28 Servers