jQuery加PHP实现图片上传并提交的示例代码


Posted in jQuery onJuly 16, 2020

图片上传思路:通过ajax实现图片上传,然后把PHP返回的图片地址,加入到隐藏字段中,最后通过表单提交给后台PHP,代码如下

HTML代码 zimg.html文件:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>自定义上传图片</title>
</head>
<body>
  <form action="a.php?action=2" method="post">
    <span>
      上传图片
    </span> 
  
    <span>
      <input type="file" id="img_url" name="img_url" accept=".jpg, .gif, .jpeg, .bmp, .png"/>
      <a onclick="UpLoadImg()">上传</a>
      <input type="hidden" id="url_data" name="url_data"/>
    </span>

    <br>
    <span>
      <input type="submit" value="提交">
    </span>
  </form>
  
</body>
<!-- 引入jq -->
<script src="https://code.jquery.com/jquery-3.0.0.min.js"></script>

<script>
  function UpLoadImg(){
    //获取上传文件
    var formData = new FormData();
    formData.append('img_url', $('#img_url')[0].files[0]);
    console.log(formData)
    //提交后台处理
    $.ajax({
      url: 'a.php?action=1',
      type: 'POST',
      cache: false,
      data: formData,
      dataType: "JSON",
      processData: false,
      contentType: false
    }).done(function(res) {
      console.log(res.url);
      if(res.status == 1){
        //赋值给字段
        $('#url_data').val(res.url);
        alert(res.msg)
      }else{
        alert(res.msg)
      }
    }).fail(function(res) {

    });
  }
</script>

</html>

后台PHP代码 a.php:

<?php
if($_GET['action'] == 1){//上传图片接口
  $img = $_FILES['img_url'];
  //获取上图片后缀
  $type = strstr($img['name'], '.');
  $rand = rand(1000, 9999);
  //命名图片名称
  $pics = date("YmdHis") . $rand . $type; 
  //上传路径
  $pic_path = "img/". $pics;
  //移动到指定目录,上传图片
  $res = move_uploaded_file($img['tmp_name'], $pic_path);
  if($res){
    echo json_encode(['status' => 1, 'msg' => '上传成功','url' => $pic_path]);exit;
  }else{
    echo json_encode(['status' => 0, 'msg' => '上传失败']);exit;
  }
}elseif($_GET['action'] == 2){//提交文件表单
  echo '<pre>';
  var_dump($_POST);
}

最后实现效果如下:

jQuery加PHP实现图片上传并提交的示例代码

ps:js代码是使用jQuery的写法,需引入jQuery代码库文件

以上就是jQuery加PHP实现图片上传并提交的示例代码的详细内容,更多关于jQuery加PHP实现图片上传的资料请关注三水点靠木其它相关文章!

jQuery 相关文章推荐
jQuery实现鼠标经过显示动画边框特效
Mar 24 jQuery
jQuery插件FusionCharts绘制的2D帕累托图效果示例【附demo源码】
Mar 28 jQuery
vue中如何引入jQuery和Bootstrap
Apr 10 jQuery
jQuery Plupload上传插件的使用
Apr 19 jQuery
jquery插件canvaspercent.js实现百分比圆饼效果
Jul 18 jQuery
jQuery 实时保存页面动态添加的数据的示例
Aug 14 jQuery
jQuery实现可兼容IE6的滚动监听功能
Sep 20 jQuery
jQuery ajax读取本地json文件的实例
Oct 31 jQuery
jQuery中的for循环var与let的区别
Apr 21 jQuery
jQuery中图片展示插件highslide.js的简单dom
Apr 22 jQuery
jQuery AJAX与jQuery事件的分析讲解
Feb 18 jQuery
javascript/jquery实现点击触发事件的方法分析
Nov 11 jQuery
jQuery 添加元素和删除元素的方法
Jul 15 #jQuery
Jquery使用each函数实现遍历及数组处理
Jul 14 #jQuery
jQuery 实现DOM元素拖拽交换位置的实例代码
Jul 14 #jQuery
jQuery开发仿QQ版音乐播放器
Jul 10 #jQuery
jQuery实现B2B网站后台管理系统侧导航
Jul 08 #jQuery
jQuery使用jsonp实现百度搜索的示例代码
Jul 08 #jQuery
jQuery 实现扁平式小清新导航
Jul 07 #jQuery
You might like
php empty()与isset()区别的详细介绍
2013/06/17 PHP
php用户注册页面利用js进行表单验证具体实例
2013/10/17 PHP
php文件包含目录配置open_basedir的使用与性能详解
2017/04/03 PHP
Javascript 继承机制实例
2009/08/12 Javascript
JQuery toggle使用分析
2009/11/16 Javascript
在图片上显示左右箭头类似翻页的代码
2013/03/04 Javascript
JavaScript常用全局属性与方法记录积累
2013/07/03 Javascript
JavaScript中document.forms[0]与getElementByName区别
2015/01/21 Javascript
jQuery简单验证上传文件大小及类型的方法
2016/06/02 Javascript
angular 基于ng-messages的表单验证实例
2017/05/04 Javascript
js学习总结之DOM2兼容处理重复问题的解决方法
2017/07/27 Javascript
浅谈react 同构之样式直出
2017/11/07 Javascript
微信小程序图片轮播组件gallery slider使用方法详解
2018/01/31 Javascript
详解vue项目打包后通过百度的BAE发布到网上的流程
2018/03/05 Javascript
如何能分清npm cnpm npx nvm
2019/01/17 Javascript
详解使用WebPack搭建React开发环境
2019/08/06 Javascript
countUp.js实现数字动态变化效果
2019/10/17 Javascript
vue vant Area组件使用详解
2019/12/09 Javascript
如何利用javascript接收json信息并进行处理
2020/08/06 Javascript
[40:03]DOTA2上海特级锦标赛主赛事日 - 1 败者组第一轮#1EHOME VS Archon
2016/03/02 DOTA
安装Python的教程-Windows
2017/07/22 Python
Python3操作SQL Server数据库(实例讲解)
2017/10/21 Python
在Qt5和PyQt5中设置支持高分辨率屏幕自适应的方法
2019/06/18 Python
Python处理时间日期坐标轴过程详解
2019/06/25 Python
淘宝秒杀python脚本 扫码登录版
2019/09/19 Python
Python操作Sonqube API获取检测结果并打印过程解析
2019/11/27 Python
Melissa香港官网:MDreams
2016/07/01 全球购物
股权转让意向书
2014/04/01 职场文书
乡党委干部党的群众路线教育实践活动个人对照检查材料思想汇报
2014/10/01 职场文书
贷款承诺书
2015/01/20 职场文书
感谢信的格式
2015/01/21 职场文书
2015暑假实习报告范文
2015/07/13 职场文书
党员反腐倡廉学习心得体会
2015/08/15 职场文书
反邪教学习心得体会
2016/01/15 职场文书
如何使用php生成zip压缩包
2021/04/21 PHP
vue实力踩坑之push当前页无效
2022/04/10 Vue.js