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实现按比例缩放图片的方法
Apr 29 jQuery
jQuery插件select2利用ajax高效查询大数据列表(可搜索、可分页)
May 19 jQuery
jQuery+ajax实现局部刷新的两种方法
Jun 08 jQuery
jQuery.Ajax()的data参数类型详解
Jul 23 jQuery
jQuery中 DOM节点操作方法大全
Oct 12 jQuery
基于jQuery的$.getScript方法去加载javaScript文档解析
Nov 08 jQuery
基于jquery trigger函数无法触发a标签的两种解决方法
Jan 06 jQuery
jQuery niceScroll滚动条错位问题的解决方法
Feb 03 jQuery
JS与jQuery判断文本框还剩多少字符可以输入的方法
Sep 01 jQuery
jQuery扩展方法实现Form表单与Json互相转换的实例代码
Sep 05 jQuery
jQuery事件多次绑定与解绑问题实例分析
Feb 19 jQuery
jquery实现垂直无限轮播的方法分析
Jul 16 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 定界符 使用技巧
2009/06/14 PHP
PHP连接MSSQL时nvarchar字段长度被截断为255的解决方法
2014/12/25 PHP
什么是PHP文件?如何打开PHP文件?
2017/06/27 PHP
PHP实现的二分查找算法实例分析
2017/12/19 PHP
浅谈PHP进程管理
2019/03/08 PHP
Laravel使用原生sql语句并调用的方法
2019/10/09 PHP
jQuery图片轮播的具体实现
2013/09/11 Javascript
一个检测表单数据的JavaScript实例
2014/10/31 Javascript
JavaScript和CSS交互的方法汇总
2014/12/02 Javascript
jQuery过滤选择器详解
2015/01/13 Javascript
JS+CSS实现可拖拽的漂亮圆角特效弹出层完整实例
2015/02/13 Javascript
微信小程序 获取微信OpenId详解及实例代码
2016/10/31 Javascript
JS解决移动web开发手机输入框弹出的问题
2017/03/31 Javascript
基于BootStrap的前端分页带省略号和上下页效果
2017/05/18 Javascript
使用mint-ui开发项目的一些心得(分享)
2017/09/07 Javascript
Vue添加请求拦截器及vue-resource 拦截器使用
2017/11/23 Javascript
浅谈Angular6的服务和依赖注入
2018/06/27 Javascript
看看“疫苗查询”小程序有温度的代码
2018/07/31 Javascript
vue-cli监听组件加载完成的方法
2018/09/07 Javascript
优化Vue中date format的性能详解
2020/01/13 Javascript
JS实现多功能计算器
2020/10/28 Javascript
js实现抽奖功能
2020/11/24 Javascript
python实现批量获取指定文件夹下的所有文件的厂商信息
2014/09/28 Python
Python获取当前页面内所有链接的四种方法对比分析
2017/08/19 Python
Python正则表达式知识汇总
2017/09/22 Python
python导入csv文件出现SyntaxError问题分析
2017/12/15 Python
在Python文件中指定Python解释器的方法
2019/02/18 Python
python笔记之mean()函数实现求取均值的功能代码
2019/07/05 Python
python numpy实现rolling滚动案例
2020/06/08 Python
CSS3实例分享--超炫checkbox复选框和radio单选框
2014/09/01 HTML / CSS
Smashbox英国官网:美国知名彩妆品牌
2017/11/13 全球购物
行风评议整改报告
2014/11/06 职场文书
优秀班主任事迹材料
2014/12/16 职场文书
2015年仓管员工作总结
2015/04/21 职场文书
前端监听websocket消息并实时弹出(实例代码)
2021/11/27 Javascript
【海涛教你打DOTA】黑鸟第一视角解说
2022/04/01 DOTA