当前位置:主页 > 聚焦 >

vue+axios+php如何实现上传文件功能?

时间:2020-11-07 06:44:53

  :《PHP视频教程》

  我们在做表单提交的时候,往往会碰到一些表单提交的需求,那vue的axios与上传文件碰撞后不会出现什么不一样的火花吗,听我一一道来:

  首先,我们需要对写一个vue的axios的表单提交,由于本人用的是webpack,so代码:

  <template lang="pug"> p input(type="file", ref="yin") button(@click="submit()") 点击上传 </template> <script> export default{ methods: { submit(){ let formdata = new FormData(); formdata.append('file', this.$refs.yin.files[0]); this.$axios({ url: '

  用的是pug的模板,也可以换成HTML的,无伤大雅,主要看js逻辑代码,首先声明一个FormData的对象,然后在进行post传值,这个时候的url是我用wamp里面的一个PHP文件,文件如下:

  <?php /** * Created by PhpStorm. * User: DELL * Date: 2017/11/23 * Time: 10:57 */ header("Access-Control-Allow-Origin:*"); // 响应类型 header('Access-Control-Allow-Methods:POST'); // 响应头设置 header('Access-Control-Allow-Headers:x-requested-with, content-type'); header("Content-type: text/html; charset=utf-8"); $file = $_FILES["file"]; if ($file["error"] > 0) { echo "错误:" . $file["error"]; } else { $name = iconv('utf-8', 'gb2312', "upload/" . $file["name"]); echo "文件名称:" . $file["name"] . "</br>"; echo "文件类型:" . $file["type"] . "</br>"; echo "文件大小:" . ($file["size"] / 1024) . "K</br>"; echo "文件临时存储的位置:" . $file["tmp_name"] . "</br>"; //保存上传的文件 if (file_exists("upload" . $file["name"])) { echo $file["name"] . "文件已经存在"; } else { //如果目录不存在则将该文件上传 if (move_uploaded_file($file['tmp_name'], $name)) { move_uploaded_file($file['tmp_name'], "upload/" . $file["name"]); } } }

  

  一定要看清楚结构,不然上传的文件无法保存起来,

  PHP里面的提头部信息解决了跨域的问题和utf-8转码解决乱码的问题,然后再把得到的文件放到upload文件夹当中;

  如下:

  完美

  相关:
 

  2020年前端vue面试题大汇总(附答案)

  vue2020最新的5个vue.js视频教程精选

  编程教学!!

热点推荐
1 Blockchain Capital关联钱包凌晨将价值370万美

12月18日消息,据onchainschool.pro监测,今日凌晨,价值370万美元的ARB代币从一个Blockchain Capital关...

2 以太坊将gas上限提升至8000万

消息,据ChainCatcher发推称:以太坊计划在1月7日BPO硬分叉后,将网络gas上限从6000万提升至8000万...

3 Tether 的 USDT 支付统计数据揭示了 2025 年加

据Tether首席执行官Paolo Ardoino援引Chainalysis和Artemis的数据称,Tether旗下加密货币USDT在2025年处理...

4 SHIB第一大持有地址向OKX转入364万美元SH

消息,据链上分析师余烬监测,SHIB 第一大持有地址于 9 小时前向 OKX 转入 4690 亿枚 SHIB,价值...

5 LayerZero:将于12月20日启动第三次费用开关

消息,ZRO 持有者将于 12 月 20 日 0 时参与第三次费用开关投票。该投票每六个月进行一次,旨...

6 Adobe公司面临集体诉讼,被指控在人工智

Adobe公司面临一项新的集体诉讼,该诉讼指控其SlimLM人工智能模型使用了盗版书籍进行训练。作...

7 巨鲸转移3.7万枚ETH至Coinbase机构

消息,据Whale Alert发推称:36,772 枚 ETH从未知钱包转入 Coinbase Institutional。...

8 XXI CEO:公司将大幅增持比特币

消息,The Bitcoin Historian 在 X 平台发文表示,XXI 公司 CEO Jack Mallers 在彭博直播中表示,公司将大...

9 XRP本周下跌9%,但ETF资金流入表明机构投

过去一周,XRP价格下跌约9%,与此形成鲜明对比的是,现货XRP ETF持续获得机构资金流入,12月...

10 Fiserv完成对StoneCastle的收购,将受保存款

Fiserv已完成对StoneCastle Cash Management的收购,整合了其机构存款网络,旨在为金融机构提供更完...

成都来彰科技 蜀ICP备2025134723号-1

资讯来源互联网,如有版权问题请联系管理员删除。