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日期范围选择器附源码下载
May 23 jQuery
jQuery Autocomplete简介_动力节点Java学院整理
Jul 17 jQuery
jQuery 利用ztree实现树形表格的实例代码
Sep 27 jQuery
jQuery ajax调用webservice注意事项
Oct 08 jQuery
基于jquery实现左右上下移动效果
May 02 jQuery
jQuery实现ajax回调函数带入参数的方法示例
Jun 26 jQuery
jquery 通过ajax请求获取后台数据显示在表格上的方法
Aug 08 jQuery
jQuery 操作 HTML 元素和属性的方法
Nov 12 jQuery
jQuery的ztree仿windows文件新建和拖拽功能的实现代码
Dec 05 jQuery
jquery无缝图片轮播组件封装
Nov 25 jQuery
jQuery+PHP+Ajax实现动态数字统计展示功能
Dec 25 jQuery
jQuery实现的上拉刷新功能组件示例
May 01 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中操作Excel实例代码
2010/04/29 PHP
Windows下XDebug 手工配置与使用说明
2010/07/11 PHP
php读取纯真ip数据库使用示例
2014/01/26 PHP
ThinkPHP框架整合微信支付之Native 扫码支付模式一图文详解
2019/04/09 PHP
解决node-webkit 不支持html5播放mp4视频的方法
2015/03/11 Javascript
JS实现横向拉伸动感伸缩菜单效果代码
2015/09/04 Javascript
JavaScript中函数表达式和函数声明及函数声明与函数表达式的不同
2015/11/15 Javascript
Angular2库初探
2017/03/01 Javascript
vue表单数据交互提交演示教程
2019/11/13 Javascript
Vue实现仿iPhone悬浮球的示例代码
2020/03/13 Javascript
jQuery实现的上拉刷新功能组件示例
2020/05/01 jQuery
vuecli3.x中轻松4步带你使用tinymce的步骤
2020/06/25 Javascript
[08:54]《一刀刀一天》之DOTA全时刻18:十九支奔赴西雅图队伍全部出炉
2014/06/04 DOTA
[01:04:01]2014 DOTA2华西杯精英邀请赛5 24 DK VS VG
2014/05/25 DOTA
[01:33]PWL开团时刻DAY2-开雾与反开雾
2020/10/31 DOTA
python利用hook技术破解https的实例代码
2013/03/25 Python
深入Python函数编程的一些特性
2015/04/13 Python
Python功能键的读取方法
2015/05/28 Python
python 基础教程之Map使用方法
2017/01/17 Python
详解python的webrtc库实现语音端点检测
2017/05/31 Python
Python排序搜索基本算法之冒泡排序实例分析
2017/12/09 Python
Python使用Selenium模块实现模拟浏览器抓取淘宝商品美食信息功能示例
2018/07/18 Python
Python sorted函数详解(高级篇)
2018/09/18 Python
想学python 这5本书籍你必看!
2018/12/11 Python
Python tornado上传文件的功能
2020/03/26 Python
matplotlib 对坐标的控制,加图例注释的操作
2020/04/17 Python
django 模型字段设置默认值代码
2020/07/15 Python
使用 HTML5 Canvas 制作水波纹效果点击图片就会触发
2014/09/15 HTML / CSS
html5简介及新增功能介绍
2020/05/18 HTML / CSS
美国50岁以上单身人士约会平台:SilverSingles
2018/06/29 全球购物
美国知名的旅游网站:OneTravel
2018/10/09 全球购物
亿阳信通股份有限公司笔试题(C#)
2016/03/04 面试题
教你用eclipse连接mysql数据库
2021/04/22 MySQL
Python爬虫基础之简单说一下scrapy的框架结构
2021/06/26 Python
阿里云 Windows server 2019 配置FTP
2022/04/28 Servers
教你使用RustDesk 搭建一个自己的远程桌面中继服务器
2022/08/14 Servers