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 17 PHP
基于initPHP的框架介绍
Apr 18 PHP
编写安全 PHP应用程序的七个习惯深入分析
Jun 08 PHP
PHP GD库生成图像的几个函数总结
Nov 19 PHP
phpmyadmin提示The mbstring extension is missing的解决方法
Dec 17 PHP
Zend Framework创建自己的动作助手详解
Mar 05 PHP
Linux平台PHP5.4设置FPM线程数量的方法
Nov 09 PHP
smarty模板数学运算示例
Dec 11 PHP
PHP实现的登录页面信息提示功能示例
Jul 24 PHP
Laravel框架使用Redis的方法详解
May 30 PHP
PHP whois查询类定义与用法示例
Apr 03 PHP
用php定义一个数组最简单的方法
Oct 04 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
PHP获取当前所在目录位置的方法
2014/11/26 PHP
PHP浮点比较大小的方法
2016/02/14 PHP
php中让人头疼的浮点数运算分析
2016/10/10 PHP
许愿墙中用到的函数
2006/10/07 Javascript
Javascript下判断是否为闰年的Datetime包
2010/10/26 Javascript
jquery ajax修改全局变量示例代码
2013/11/08 Javascript
JavaScript onkeypress事件入门实例(按下或按住一个键盘按键)
2014/10/17 Javascript
firefox浏览器用jquery.uploadify插件上传时报HTTP 302错误
2015/03/01 Javascript
javascript文本模板用法实例
2015/07/31 Javascript
JavaScript数组去重的五种方法
2015/11/05 Javascript
jquery树形菜单效果的简单实例
2016/06/06 Javascript
分享vue.js devtools遇到一系列问题
2017/10/24 Javascript
使用nvm管理不同版本的node与npm的方法
2017/10/31 Javascript
解决Vue.js应用回退或刷新界面时提示用户保存修改问题
2019/11/24 Javascript
[35:55]完美世界DOTA2联赛PWL S3 Rebirth vs CPG 第一场 12.11
2020/12/13 DOTA
python下载文件时显示下载进度的方法
2015/04/02 Python
python写入中英文字符串到文件的方法
2015/05/06 Python
Python常用的文件及文件路径、目录操作方法汇总介绍
2015/05/21 Python
Python求出0~100以内的所有素数
2018/01/23 Python
python3 发送任意文件邮件的实例
2018/01/23 Python
对命令行模式与python交互模式介绍
2018/05/12 Python
利用python如何处理nc数据详解
2018/05/23 Python
Python基础之文件读取的讲解
2019/02/16 Python
PyQt5重写QComboBox的鼠标点击事件方法
2019/06/25 Python
python保留格式汇总各部门excel内容的实现思路
2020/06/01 Python
PyCharm+Miniconda3安装配置教程详解
2021/02/16 Python
Myprotein俄罗斯官网:欧洲第一运动营养品牌
2019/05/05 全球购物
澳大利亚优惠网站:Deals.com.au
2019/07/02 全球购物
英国领先的露营和露营车品牌之一:OLPRO
2019/08/06 全球购物
咖啡馆创业计划书
2014/01/26 职场文书
学生不参加考试检讨书
2015/02/19 职场文书
电信营业员岗位职责
2015/04/14 职场文书
入团介绍人意见范文
2015/06/04 职场文书
《刺客之王:C罗全景传记》:时代从来不会亏待手艺人
2019/11/28 职场文书
如何在Python中妥善使用进度条详解
2022/04/05 Python
分享很少见很有用的SQL功能CORRESPONDING
2022/08/05 MySQL