jQuery+PHP实现图片上传并提交功能


Posted in PHP onJuly 27, 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实现图片上传并提交内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PHP 相关文章推荐
用PHP实现多级树型菜单
Oct 09 PHP
php 什么是PEAR?(第二篇)
Mar 19 PHP
PHP 程序员也要学会使用“异常”
Jun 16 PHP
PHP GD 图像处理组件的常用函数总结
Apr 28 PHP
解析php类的注册与自动加载
Jul 05 PHP
php配置php-fpm启动参数及配置详解
Nov 04 PHP
一漂亮的PHP图片验证码实例
Mar 21 PHP
PHP使用feof()函数读文件的方法
Nov 07 PHP
PHP简单选择排序算法实例
Jan 26 PHP
OAuth认证协议中的HMACSHA1加密算法(实例)
Oct 25 PHP
基于php伪静态的实现方法解析
Jul 31 PHP
PHP序列化和反序列化深度剖析实例讲解
Dec 29 PHP
关于PHP中interface的用处详解
Jul 26 #PHP
Laravel中如何轻松容易的输出完整的SQL语句
Jul 26 #PHP
php+mysql+ajax 局部刷新点赞/取消点赞功能(每个账号只点赞一次)
Jul 24 #PHP
php实现商城购物车的思路和源码分析
Jul 23 #PHP
PHP安全之register_globals的on和off的区别
Jul 23 #PHP
PHP代码覆盖率统计详解
Jul 22 #PHP
php实现统计IP数及在线人数的示例代码
Jul 22 #PHP
You might like
Ajax+PHP 边学边练 之二 实例
2009/11/24 PHP
php 智能404跳转代码,适合换域名没改变目录的网站
2010/06/04 PHP
phpMyAdmin 链接表的附加功能尚未激活问题的解决方法(已测)
2012/03/27 PHP
输入值/表单提交参数过滤有效防止sql注入的方法
2013/12/25 PHP
PHP自带方法验证邮箱、URL、IP是否合法的函数
2016/12/08 PHP
php使用lua+redis实现限流,计数器模式,令牌桶模式
2019/04/04 PHP
Yii2处理密码加密及验证的方法
2019/05/12 PHP
php抽象方法和普通方法的区别点总结
2019/10/13 PHP
jQuery AjaxQueue改进步骤
2011/10/06 Javascript
定义JavaScript二维数组采用定义数组的数组来实现
2012/12/09 Javascript
解决css和js的{}与smarty定界符冲突问题的两种方法
2013/09/10 Javascript
导航跟随滚动条置顶移动示例代码
2013/09/11 Javascript
JS操作Cookie写入和读取实例代码
2013/10/20 Javascript
javascript面向对象之共享成员属性与方法及prototype关键字用法
2015/01/13 Javascript
js实现多选项切换导航菜单的方法
2015/02/06 Javascript
JQuery鼠标移到小图显示大图效果的方法
2015/06/10 Javascript
js实现前端分页页码管理
2017/01/06 Javascript
Bootstrap table 定制提示语的加载过程
2017/02/20 Javascript
angular.js+node.js实现下载图片处理详解
2017/03/31 Javascript
angular中使用Socket.io实例代码
2017/06/03 Javascript
js事件委托和事件代理案例分享
2017/07/25 Javascript
vue项目首屏加载时间优化实战
2019/04/23 Javascript
Python实现爬取百度贴吧帖子所有楼层图片的爬虫示例
2018/04/26 Python
Flask框架学习笔记之路由和反向路由详解【图文与实例】
2019/08/12 Python
python else语句在循环中的运用详解
2020/07/06 Python
荷兰包包购物网站:The Little Green Bag
2018/03/17 全球购物
JSF面试题:如何管量web层中的Bean,用什么标签。如何通过jsp页面与Bean绑定在一起进行处理?
2012/10/05 面试题
How TDD works
2012/09/30 面试题
2014年人事行政工作总结
2014/12/03 职场文书
毕业生政审意见范文
2015/06/04 职场文书
2016年感恩教师节校园广播稿
2015/12/18 职场文书
2016年优秀党员教师先进事迹材料
2016/02/29 职场文书
Oracle设置DB、监听和EM开机启动的方法
2021/04/25 Oracle
你知道哪几种MYSQL的连接查询
2021/06/03 MySQL
Java各种比较对象的方式的对比总结
2021/06/20 Java/Android
mysql聚集索引、辅助索引、覆盖索引、联合索引的使用
2022/02/12 MySQL