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 相关文章推荐
5.PHP的其他功能
Oct 09 PHP
php intval的测试代码发现问题
Jul 27 PHP
PHP 文件上传功能实现代码
Jun 24 PHP
zend framework多模块多布局配置
Feb 26 PHP
php产生随机数的两种方法实例代码 输出随机IP
Apr 08 PHP
PHP动态生成javascript文件的2个例子
Apr 11 PHP
php中session过期时间设置及session回收机制介绍
May 05 PHP
php文件上传你必须知道的几点
Oct 20 PHP
浅谈PHP的exec()函数无返回值排查方法(必看)
Mar 31 PHP
php学习笔记之mb_strstr的基本使用
Feb 03 PHP
PHP根据key删除数组中指定的元素
Feb 28 PHP
浅谈PHP中的那些魔术常量
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
山进SANGEAN ATS-909X电路分析
2021/03/02 无线电
CodeIgniter启用缓存和清除缓存的方法
2014/06/12 PHP
PHP基于MySQL数据库实现对象持久层的方法
2015/06/17 PHP
php类的扩展和继承用法实例
2015/06/20 PHP
php防止网站被攻击的应急代码
2015/10/21 PHP
php使用ftp实现文件上传与下载功能
2017/07/21 PHP
PHP守护进程化在C和PHP环境下的实现
2017/11/21 PHP
在云虚拟主机部署thinkphp5项目的步骤详解
2017/12/21 PHP
在php的yii2框架中整合hbase库的方法
2018/09/20 PHP
PHP实现发送微博消息功能完整示例
2019/12/04 PHP
JQury slideToggle闪烁问题及解决办法
2011/07/05 Javascript
鼠标经过显示二级菜单js特效
2013/08/13 Javascript
使用JavaScript获取地址栏参数的方法
2014/12/19 Javascript
Bootstrap每天必学之轮播(Carousel)插件
2016/04/25 Javascript
javascript设置文本框光标的方法实例小结
2016/11/04 Javascript
ionic2 tabs 图标自定义实例
2017/03/08 Javascript
JavaScript判断输入是否为数字类型的方法总结
2017/09/28 Javascript
JavaScript学习总结(一) ECMAScript、BOM、DOM(核心、浏览器对象模型与文档对象模型)
2018/01/07 Javascript
基于Vue的ajax公共方法(详解)
2018/01/20 Javascript
解决使用bootstrap的dropdown部件时报错:error:Bootstrap dropdown require Popper.js问题
2018/08/30 Javascript
python 基础教程之Map使用方法
2017/01/17 Python
PyQT5 emit 和 connect的用法详解
2019/12/13 Python
Python猴子补丁知识点总结
2020/01/05 Python
Python如何重新加载模块
2020/07/29 Python
python操作redis数据库的三种方法
2020/09/10 Python
详解Pycharm第三方库的安装及使用方法
2020/12/29 Python
CSS3实现各种图形的示例代码
2016/10/19 HTML / CSS
英国领先的在线药房:Pharmacy First
2017/09/10 全球购物
会计学应届毕业生推荐信
2013/11/04 职场文书
工商管理实习生自我鉴定范文
2013/12/18 职场文书
关于圣诞节的广播稿
2014/01/26 职场文书
个人承诺书
2014/03/26 职场文书
2015年董事长秘书工作总结
2015/07/23 职场文书
《孙子兵法》:欲成大事者,需读懂这些致胜策略
2019/08/23 职场文书
Nginx本地目录映射实现代码实例
2021/03/31 Servers
JS前端监控采集用户行为的N种姿势
2022/07/23 Javascript