Deprecated: imwpcache\f884414bce24ee67f\f73723ec7b1919fa5::__construct(): Implicitly marking parameter $YECBGYFECGEAFWHA as nullable is deprecated, the explicit nullable type must be used instead in /www/wwwroot/www.chuangxiangniao.com/wp-content/plugins/imwpcache-dist/build/f884414bce24ee67ff73723ec7b1919fa5.php on line 2

Deprecated: imwpcache\f884414bce24ee67f\f73723ec7b1919fa5::__construct(): Implicitly marking parameter $BBWFDDBHHYHDXXAB as nullable is deprecated, the explicit nullable type must be used instead in /www/wwwroot/www.chuangxiangniao.com/wp-content/plugins/imwpcache-dist/build/f884414bce24ee67ff73723ec7b1919fa5.php on line 2
thinkphp5怎么加layui实现图片上传功能_创想鸟

thinkphp5怎么加layui实现图片上传功能

网站中很多表单都会用到上传图片,logo,照片,用户也会上传图片,这个时候网站就需要一个上传图片的功能,而且在上传后希望能预览一下看上传的对不对。

thinkphp5加layui实现图片上传功能(带图片预览)思路,异步传输图片并预览,将异步上传后的值返回表单隐藏域再提交。

1、引入文件

首先,要引入jQuery文件,这是必须的

Cutout老照片上色 Cutout老照片上色

Cutout.Pro推出的黑白图片上色

Cutout老照片上色 20 查看详情 Cutout老照片上色


2、HTML部分

<img id="pre_img" />

3、功能实现

layui.use(['form','layer','upload'],function(){$ = layui.jquery;var form = layui.form;layer = layui.layer;var upload = layui.upload;    //执行实例var uploadInst = upload.render({elem: '#upload_img' //绑定元素,url: '/admins.php/admins/video/upload_img' //上传接口,accept:'images',done: function(res){  //上传完毕回调  $('#pre_img').attr('src',res.msg);  $('input[name="img"]').val(res.msg);},error: function(){  //请求异常回调}});});// 保存function save(){var title = $.trim($('input[name="title"]').val());var url = $.trim($('input[name="url"]').val());if(title == ''){layer.msg('请输入影片名称',{'icon':2,'anim':6});return;}if(url == ''){layer.msg('请输入影片地址',{'icon':2,'anim':6});return;}$.post('/admins.php/admins/video/save',$('form').serialize(),function(res){if(res.code>0){layer.msg(res.msg,{'icon':2,'anim':2});}else{layer.msg(res.msg,{'icon':1});setTimeout(function(){parent.window.location.reload();},1000);}},'json');}

4、后台处理

图片上传

public function upload_img(){$file = request()->file('file');if($file==null){exit(json_encode(array('code'=>1,'msg'=>'没有文件上传')));}$info = $file->move(ROOT_PATH.'public'.DS.'uploads');$ext = ($info->getExtension());if(!in_array($ext,array('jpg','jpeg','gif','png'))){exit(json_encode(array('code'=>1,'msg'=>'文件格式不支持')));}$img = '/uploads/'.$info->getSaveName();exit(json_encode(array('code'=>0,'msg'=>$img)));}

保存内容

public function save(){$id = (int)input('post.id');$data['title'] = trim(input('post.title'));$data['channel_id'] = (int)input('post.channel_id');$data['charge_id'] = (int)input('post.charge_id');$data['area_id'] = (int)input('post.area_id');$data['img'] = trim(input('post.img'));$data['url'] = trim(input('post.url'));$data['keywords'] = trim(input('post.keywords'));$data['desc'] = trim(input('post.desc'));$data['status'] = (int)input('post.status');if($data['title'] == ''){exit(json_encode(array('code'=>1,'msg'=>'影片名称不能为空')));}if($data['url'] == ''){exit(json_encode(array('code'=>1,'msg'=>'影片地址不能为空')));}if($id){$this->db->table('video')->where(array('id'=>$id))->update($data);}else{$data['add_time'] = time();$this->db->table('video')->insert($data);}exit(json_encode(array('code'=>0,'msg'=>'保存成功')));}

以上就是thinkphp5怎么加layui实现图片上传功能的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/310479.html

赞 (0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
win11如何修复“你需要一个新应用来打开此windowsdefender链接”_Win11Windows Defender链接修复方法
上一篇 2025年11月5日 05:06:17
sublime怎么显示或隐藏侧边栏_sublime侧边栏开关设置方法
下一篇 2025年11月5日 05:06:24

相关推荐

  • 如何在ThinkPHP6中使用Eloquent简化业务层

    随着互联网的发展,web应用程序的开发已经成为现代软件开发的核心。由于业务逻辑的复杂性,开发人员需要很多工具和技术来简化代码,提高效率。在这方面,使用eloquent orm可以大大简化业务层代码。在本文中,我们将介绍如何在thinkphp6中使用eloquent来简化业务层。 什么是Eloquen…

    用户投稿 2026年9月25日
    100
  • thinkphp和yii区别

    thinkphp和yii区别thinkphp和yii区别thinkphp和yii区别thinkphp和yii区别

    thinkPHP:社区火爆,中文的新手教程很详细,比较容易上手。   (推荐学习:thinkphp5) web项目开发中大部分代码都是重复的,因此自动化代码生成工具是必不可少的,截至最新的tp3.2.3,我仍然没看到tp对自动化工具有任何支持的迹象;gii非常好用的建模块、控制器(动作)、CURD操…

    2026年9月25日 • 用户投稿
    000
  • thinkphp缓存和redis缓存哪个快

    thinkphp缓存和redis缓存哪个快thinkphp缓存和redis缓存哪个快thinkphp缓存和redis缓存哪个快thinkphp缓存和redis缓存哪个快

    tp5中的cache 储存方式,我本地设置的是读取文本的形式。 以这段代码为例:    (推荐学习:thinkphp5) public function getAllManegerId(){ $cache =checkCache(‘kf_getallManeger’); if($cache)retu…

    2026年9月25日 • 用户投稿
    100
  • ThinkPHP6.0管道模式与中间件的实现分析

    说明 ThinkPHP 6.0 RC5 开始使用了管道模式来实现中间件,比起之前版本的实现更加简洁、有序。这篇文章对其实现细节进行分析。 首先我们从入口文件 public/index.php 开始,$http = (new App())->http; 获得一个 http 类的实例后调用它的 r…

    2026年9月25日
    000
  • thinkphp开发用什么IDE?

    thinkphp开发用什么IDE?thinkphp开发用什么IDE?thinkphp开发用什么IDE?thinkphp开发用什么IDE?

    thinkphp开发用什么ide? Zend Studio Zend Studio是一款来自Zend公司旗下的一款经典PHP IDE。 Zend Studio是一个屡获大奖的专业PHP集成开发环境,具备功能强大的专业编辑工具和调试工具,支持PHP语法加亮显示,支持语法自动填充功能,支持书签功能,支持…

    2026年9月25日 • 用户投稿
    200
  • workerman与thinkphp结合使用的方法

    workerman与thinkphp结合使用的方法workerman与thinkphp结合使用的方法workerman与thinkphp结合使用的方法workerman与thinkphp结合使用的方法

    下面由workerman入门教程栏目给大家介绍将workerman与thinkphp结合的方法,希望对大家有一定的帮助。 运行workerman需要安装pcntl和event或者libevent pcntl安装方法: 以php-5.5.20为例,实际情况按自己安装的PHP目录 立即学习“PHP免费学…

    2026年9月25日 • 用户投稿
    200
  • 如何在ThinkPHP6中使用Shardig数据库

    在现代web应用程序的开发过程中,数据量通常很大,为了应对这种情况并提升数据库性能,通常会采用分库分表的方式进行数据管理。sharding数据库则是一种常见的实现方式,它可以将数据分散在多个不同的数据库集群上进行管理,以此实现数据的高可用性和性能提升。本文将介绍如何在thinkphp6中使用shar…

    用户投稿 2026年9月24日
    000
  • 在ThinkPHP6中使用权限控制技术

    权限控制技术在现代web应用程序开发中越来越重要。它可以帮助开发者管理用户权限、控制数据访问和保护系统安全。而thinkphp6是一个强大的php框架,提供了多种权限控制技术,本文将介绍其中的一些。 认证与授权 在ThinkPHP6中,认证和授权是两个不同的概念。认证通常是指验证用户的身份,判断用户…

    用户投稿 2026年9月24日
    100
  • 如何在ThinkPHP6中使用MongoDB进行数据存储

    随着互联网的不断发展,数据的存储和处理越来越成为一个重要的方向。而mongodb则是一种适用于大规模数据和高性能应用场景的nosql数据库,它的高性能和可扩展性得到了众多开发者的拥护。在这篇文章中,我们将介绍如何在thinkphp6中使用mongodb进行数据存储。 一、安装MongoDB拓展 首先…

    用户投稿 2026年9月24日
    100
  • MySQL中SQL注入防范 SQL注入攻击的预防与应对措施

    sql注入的防范核心在于参数化查询。具体措施包括:1.始终使用参数化查询,将用户输入视为数据而非可执行代码;2.对输入进行过滤与校验,如验证格式、转义特殊字符;3.遵循最小权限原则,限制数据库账号权限;4.控制错误信息输出,避免暴露敏感细节;5.定期更新框架与插件,及时修补漏洞。这些方法结合使用能有…

    2026年9月24日
    100
  • 如何使用ThinkPHP6实现验证码功能

    在网站或应用的登录、注册、找回密码等登录认证系统当中,验证码功能已经成为常见的一种用户验证方式。验证码功能能够有效防止恶意攻击和机器人攻击,保护用户数据和系统安全。本文将介绍如何使用thinkphp6框架实现验证码功能。 一、ThinkPHP6验证码功能介绍 ThinkPHP6框架中的验证码功能可以…

    用户投稿 2026年9月24日
    000
  • 利用ThinkPHP6实现动态配置

    随着互联网技术的不断发展,如何快速、灵活地配置系统已成为开发人员的必修课。因此,动态配置已经成为现代软件开发的重要组成部分。在这篇文章中,我们将介绍如何使用thinkphp6实现动态配置的方法。 一、什么是动态配置? 动态配置是通过代码实现对系统的配置进行修改的过程。传统的系统配置一般需要修改配置文…

    用户投稿 2026年9月24日
    000
  • VSCode怎么启动Layui项目_VSCode运行Layui前端框架项目教程

    必须使用本地服务器运行Layui项目,因为直接打开HTML文件通过file://协议会受浏览器安全限制,导致AJAX、跨域等功能异常,Layui组件无法正常加载;推荐安装Node.js后使用npm全局安装http-server,通过命令行启动服务,或在VSCode中安装Live Server插件,右…

    2026年9月21日
    200
  • ThinkPHP6发送推送通知:实现用户消息推送

    ThinkPHP6发送推送通知:实现用户消息推送 引言:在现代的Web应用程序中,消息推送已成为提供实时通知和即时更新的重要功能之一。用户在操作过程中会收到及时的消息提醒,提升用户体验和交互性。本文将介绍如何在ThinkPHP6框架中实现用户消息推送功能,并附带代码示例。 一、准备工作 确保已经安装…

    2026年9月21日
    000
  • ThinkPHP6用户登录与注册:实现用户认证功能

    ThinkPHP6用户登录与注册:实现用户认证功能 引言:用户登录与注册是大多数Web应用程序的常见需求之一。在ThinkPHP6中,通过使用内置的用户认证功能可以轻松实现用户的登录与注册操作。本文将介绍如何在ThinkPHP6中实现用户的认证功能,并附上代码示例。 一、用户认证功能简介用户认证是指…

    2026年9月21日
    300
  • ThinkPHP6接口限流与防刷:保护接口的安全性

    ThinkPHP6接口限流与防刷:保护接口的安全性 在现代互联网应用中,接口的使用越来越广泛,很多应用都依赖于各种接口来进行数据传输和交互。然而,由于接口的开放性和便利性,也容易成为攻击者的目标,因此保护接口的安全性变得至关重要。在ThinkPHP6框架中,提供了一些防护机制和限制措施,帮助我们有效…

    2026年9月21日
    200
  • 自定义协议与主流框架(如ThinkPHP)结合

    在thinkphp中实现自定义协议可以通过中间件机制。具体步骤包括:1. 创建中间件类customprotocolmiddleware,解析和验证请求的json格式和字段。2. 在应用配置文件中添加该中间件,使所有请求经过处理。通过这种方式,可以满足特定业务需求并提升应用的灵活性和可扩展性。 在开发…

    2026年9月21日
    000
  • ThinkPHP生产环境部署的注意事项

    在生产环境中部署thinkphp应用需要注意以下几点:1.确保服务器环境满足thinkphp要求,使用php 7.2+和支持的web服务器;2.配置php.ini和application/config.php文件,关闭调试模式,设置合适的日志级别和数据库连接;3.采取安全措施,保护应用目录结构,使用…

    2026年9月21日
    200
  • 使用ThinkPHP构建RESTful API的规范

    使用thinkphp可以构建符合restful api规范的应用。1)定义路由和控制器来处理请求,如get用户信息。2)使用中间件处理认证。3)利用缓存机制优化性能。通过这些步骤,thinkphp支持快速、高效地构建restful api。 你想知道如何使用ThinkPHP来构建一个符合RESTfu…

    2026年9月20日
    100
  • ThinkPHP6聊天室开发指南:实现实时通讯功能

    ThinkPHP6聊天室开发指南:实现实时通讯功能 引言:随着互联网的快速发展,实时通讯的需求也越来越大。聊天室作为一种常见的实时通讯方式,受到了广泛的关注和使用。本文将通过使用ThinkPHP6框架,为大家提供一种简单、快速实现实时通讯功能的方法。 一、环境配置:在开始之前,我们需要配置好开发环境…

    2026年9月20日
    000

发表回复

登录后才能评论
关注微信