php layui post文件上传,layui+php文件上传

单独的文件上传

html文件

upload模块快速使用

上传封面

layui.use('upload', function(){

var upload = layui.upload;

//执行实例

var uploadInst = upload.render({

elem:'#cover'

,url:'/admin/test/upload'

,accept:'file' // 允许上传的文件类型

,before:function (obj) {

console.log(obj);

// 预览

obj.preview(function(index,file,result) {

// console.log(file.name); //图片名字

// console.log(file.type); //图片格式

// console.log(file.size); //图片大小

// console.log(result); //图片地址

if (file.type=='image/png' || file.type=='image/jpg'|| file.type=='image/jpeg' & file.size <=400000){

$('#preview').attr('src',result); //图片链接 base64

}else {

$('#p').empty().append("请重新上传符合条件的图片");//使用empty()清空,防止多次点击重复添加

}

});

// layer.load();

}

// 上传成功回调

,done:function(res) {

// console.log(upload);

console.log(res.msg);

}

// 上传失败回调

,error:function(index,upload) {

// 上传失败

}

});

});

php文件

/**

* Test.php

* file descriptions

* Create by ling

* Time:2020/10/28 10:08

*/

namespace app\admin\controller;

use think\Controller;

use think\Db;

class Test extends Controller{

public function index(){

return $this->fetch();

}

public function upload(){

$file = request()->file('file');

$info = $file->move('public/upload/');

if($info) {

$data['code'] = 0;

$data['msg'] = $info->getSaveName();

$data['type'] = $info->getExtension();//获取图片的类型

if($data['type'] == 'jpg' || $data['type'] == 'gif' || $data['type'] == 'png' || $data['type'] == 'jpeg'){

Db::name('image')->insert([

'imageurl' => 'http://www.turingwebsite.com/public/upload/'.$data['msg'],

'create_time' => time()

]);

}

}else{

$data['code'] = 1;

$data['msg'] = $file->getError();

}

return json($data);

}

}

文件和表单一起上传

html文件

upload模块快速使用

输入框

封面

上传封面

立即提交

重置

layui.use('upload', function(){

var upload = layui.upload;

//执行实例

var uploadInst = upload.render({

elem:'#cover'

,url:'/admin/test/upload'

,accept:'file', // 允许上传的文件类型

auto: false /*true为选中图片直接提交,false为不提交根据bindAction属性上的id提交*/

,bindAction: '#tijiao',//auto为false时,点击触发上传

choose:function (obj) {

// 预览

obj.preview(function(index,file,result) {

// console.log(file.name); //图片名字

// console.log(file.type); //图片格式

// console.log(file.size); //图片大小

// console.log(result); //图片地址

$('#preview').attr('src',result); //图片链接 base64

});

// layer.load();

}

// 上传成功回调

,done:function(res) {

console.log(res);

if(res.code===0){

$('#hidden').val(res.msg);

}

}

// 上传失败回调

,error:function(index,upload) {

// 上传失败

}

});

});

var form = layui.form;

form.on('submit(formDemo)', function(data){

var Name=data.field.title;

layer.confirm('确定保存?', function(index) {

var hidden = $('#hidden').val();//在弹出确定层之后获取数据,图片的name值重新获取

console.log(hidden);

$.ajax({

type:'post',

url:"/admin/test/upload2",

data: {name:Name,hidden:hidden},

})

layer.close(index);

})

});

php文件

/**

* Test.php

* file descriptions

* Create by ling

* Time:2020/10/28 10:08

*/

namespace app\admin\controller;

use think\Controller;

use think\Db;

use think\Request;

class Test extends Controller{

public function index(){

return $this->fetch();

}

public function upload(){

$file = request()->file('file');

$info = $file->move('public/upload/');

if($info) {

$data['code'] = 0;

$data['msg'] = 'http://www.turingwebsite.com/public/upload/'.$info->getSaveName();

Db::name('image')->insert([

'imageurl' => $data['msg'],

'create_time' => time()

]);

}else{

$data['code'] = 1;

$data['msg'] = $file->getError();

}

return json($data);

}

public function upload2(){

if ($this->request->isPost()) {

$Name=input('post.name');

$hidden=input('post.hidden');

$Name=input('post.name');

Db::name('test')->insert([

'content' => $Name,

'imageurl' => $hidden,

'create_time' => time()

]);

$data=array(

'code' => 0,

'msg' =>'新增成功'

);

return json($data);

}else{

$data=array(

'code' => 1,

'msg' =>'请求方式错误'

);

return json($data);

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值