ThinkPHP6 上传图片代码demo
本文展示了ThinkPHP6 上传图片代码demo, 代码亲测可用.

HTML部分代码
<tr>
<th class="font-size-sm" style="width:15%;height:100px;">商品图片</th>
<td>
<div class="custom-file">
<div id="uploadImage" style="width:100px;height:100px;display: inline;"></div>
<button id="uploadBtn" class="btn btn-outline-info font-size-sm">选择图片</button>
<input type="file" name="imgFile" id="imgFile" style="display: none;">
</div>
</td>
</tr>
JS部分代码
$(document).ready(function(){
var input = $("#imgFile");
// 将上传按钮绑定到input['file']上
$("#uploadBtn").click(function(){
input.trigger("click");
});
input.change(function () {
// 如果value不为空,调用文件加载方法
if ($(this).val() !== "") {
doUpload(this);
}
});
});
// 上传图片
var SCOPE = {
'uploadUrl': '{:url("' + urlPath +'/upload")}',
};
function doUpload() {
var formData = new FormData($( "#myform" )[0]),
appendDiv = $("#uploadImage"),
imageUrl = '',
imageDiv = '';
$.ajax({
url: SCOPE.uploadUrl ,
type: 'POST',
data: formData,
async: false,
cache: false,
contentType: false,
processData: false,
success: function (result) {
if(result.status === 1){
appendDiv.empty();
imageUrl = '/storage/' + result.data;
imageDiv = '';
appendDiv.append(imageDiv);
}
},
});
}
ThinkPHP中的上传方法
/**
* 图片上传(ajax)
* @return \think\Response|void
* @throws \Exception
*/
public function upload()
{
// 获取表单上传文件 例如上传了001.jpg
$file = request()->file('imgFile');
try{
// 验证
validate(['imgFile'=>[
'fileSize' => 410241024,
'fileExt' => 'jpg,jpeg,png,bmp,gif',
'fileMime' => 'image/jpeg,image/png,image/gif', //这个一定要加上,很重要我认为!
]])->check(['imgFile' => $file]); // 上传图片到本地服务器
$saveName = \think\facade\Filesystem::disk('public')->putFile( 'merchant', $file, 'data');
$this->result(1, '图片上传成功!', $saveName, 'json');
} catch (\Exception $e) {
// 验证失败 输出错误信息
return $this->exceptionHandle($e,
'图片上传失败!' . $e->getMessage(),
'json',
'');
}
}
本文转载自老刘博客, 转载请注明出处,谢谢!
http://laoliu.pro/php/15.html
————————————————
版权声明:本文为CSDN博主「老刘pro」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/a33130317/article/details/106933622
ThinkPHP6 上传图片代码demo的更多相关文章
- 嵌入式 hi3518x平台h264+g711a封装mp4代码demo
先看代码吧,有代码有真相,具体代码的demo(下载demo的朋友请勿在网上上传我的demo,谢谢)下载连接为: http://download.csdn.net/detail/skdkjxy/8071 ...
- 用Portable.BouncyCastle来进行加解密的代码demo
前言 这里对之前对接的公司中的代码demo做一个总结,原本为清一色的java,哈哈.这里都转成C#.用到的库是Portable.BouncyCastle.官网.之前也是准备用.net core 内置的 ...
- python 网络通讯 服务器端代码demo,能够同时处理多个客户端的连接请求
这是一个python网络通讯服务器端的代码demo,能够同时处理多个客户端的连接请求. from socket import * import threading from datetime impo ...
- Javascript类继承-机制-代码Demo【原创】
最近看到<Javascript设计模式>,对js模拟的”继承方式“有了更深一步的了解,虽然之前也总是用到prototype.new ,但只是知其然不知所以然,现在将类继承的方法整理如下,暂 ...
- jdk8十大特性并代码demo(转)
一.十大特性 1.Lambda表达式 2.Stream函数式操作流元素集合 3.接口新增:默认方法与静态方法 4.方法引用,与Lambda表达式联合使用 5.引入重复注解 6.类型注解 7.最新的Da ...
- 机器学习:eclipse中调用weka的Classifier分类器代码Demo
weka中实现了很多机器学习算法,不管实验室研究或者公司研发,都会或多或少的要使用weka,我的理解是weka是在本地的SparkML,SparkML是分布式的大数据处理机器学习算法,数据量不是很大的 ...
- 微信支付接口--超详细带注释代码--Demo
如果本文对你有用,请爱心点个赞,提高排名,帮助更多的人.谢谢大家!❤ 如果解决不了,可以在文末进群交流. 如果对你有帮助的话麻烦点个[推荐]~最好还可以follow一下我的GitHub~感谢观看! 微 ...
- 线性回归和梯度下降代码demo
程序所用文件:https://files.cnblogs.com/files/henuliulei/%E5%9B%9E%E5%BD%92%E5%88%86%E7%B1%BB%E6%95%B0%E6%8 ...
- vc++ 调用winapi调节屏幕亮度(增加win7代码demo)
1.关于 代码是通过测试的,测试环境: win7 + MFC 为什么要发在这里? 区别于上一篇随笔. MD排版更顺眼 demo 会放到 这里 更正了上一篇随笔中的代码错误 2.头文件 #include ...
随机推荐
- BJDCTF-WP
BJDCTF 2nd WP 引言 由于在备考,所以没多少时间做,并且也实属是菜,所以就做了几个题目,这里就分享一下啦 Hi~ o( ̄▽ ̄)ブ [BJDCTF 2nd]fake google 知识点:S ...
- Spring_使用JdbcTemplate和JdbcDaoSupport
1.JdbcTemplate 简化 JDBC 模板查询 ①每次使用都创建一个 JdbcTemplate 的新实例, 这种做法效率很低下.②JdbcTemplate 类被设计成为线程安全的, 所以可以再 ...
- 关于如何提高SRAM存储器的新方法
SRAM是当今处理器上最普遍的内存.当芯片制造商宣布他们已经成功地将更多的电路封装到芯片上时,通常是较小的晶体管引起了人们的注意.但是连接晶体管形成电路的互连也必须收缩.IMEC的研究人员提出了一个方 ...
- Chisel3 - util - BitPat
https://mp.weixin.qq.com/s/80Q8j-OSMtgh5a92pI-MZA 使用value和mask来描述一个比特模式,即:value = bits & mask. ...
- layui插件croppers的使用
这是我第一次在layui环境下面使用croppers插件.先粘贴下前端代码并附上我的目录结构吧. @{ ViewData["Title"] = "Crop ...
- 使用turtle库绘制一个叠加等边三角形
import turtle as t t.setup(600, 600, None,None) t.pu() t.fd(-120) t.pensize(5) t.width(5) t.pencolor ...
- CPU亲和度
CPU亲和度(CPU Affinity),就是将一个进程或者线程强制绑定在CPU的某一个core上运行. 参考:https://www.cnblogs.com/zhangxuan/p/6427533. ...
- Java实现 LeetCode 327 区间和的个数
327. 区间和的个数 给定一个整数数组 nums,返回区间和在 [lower, upper] 之间的个数,包含 lower 和 upper. 区间和 S(i, j) 表示在 nums 中,位置从 i ...
- Java实现 LeetCode 110 平衡二叉树
110. 平衡二叉树 给定一个二叉树,判断它是否是高度平衡的二叉树. 本题中,一棵高度平衡二叉树定义为: 一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1. 示例 1: 给定二叉树 [3,9 ...
- ModelAndView的部分回顾
ModelAndView的部分回顾 //@RestController @Controller //@SessionAttributes("user") //把modelandvi ...