TP5中含图片的表单ajax上传(不含图片回显)

前端:

<div class="page-container">
	<form action="" method="post" class="form form-horizontal" id="formadd">
		<div class="row cl">
			<label class="form-label col-xs-4 col-sm-2">
				<span class="c-red">*</span>
				标题:</label>
			<div class="formControls col-xs-6 col-sm-6">
				<input type="text" class="input-text" value="" placeholder="" id="title" name="title">
			</div>
		</div>
		<div class="row cl">
			<label class="form-label col-xs-4 col-sm-2">
				<span class="c-red">*</span>
				导图:</label>
			<div class="formControls col-xs-6 col-sm-6">
				<input type="file" class="input-text" value="" placeholder="" id="image" name="image" >
			</div>
		</div>
		<div class="row cl">
			<label class="form-label col-xs-4 col-sm-2">
				<span class="c-red">*</span>
				正文:</label>
			<div class="formControls col-xs-6 col-sm-6">
				<textarea name="content" id="detailinfo" style="width: 700px;height: 900px;" cols="" rows=""></textarea>
			</div>
		</div>
		<div class="row cl">
			<div class="col-9 col-offset-2">
				<input class="btn btn-primary radius" type="submit" value="  提交  ">
			</div>
		</div>
	</form>
</div>

ajax提交:

$('#formadd').submit(function(event){
		//ajax方式提交form表单信息给服务器
	event.preventDefault(); //阻止浏览器form表单提交
	var form=document.getElementById("formadd");
    var fd =new FormData(form);
	$.ajax({
		url:'url地址/upload',
		type:'post',
		data:fd,
		processData: false,  // 告诉jQuery不要去处理发送的数据
                contentType: false,   // 告诉jQuery不要去设置Content-Type请求头
                dataType:'json',		
		success:function(msg){
			if(msg.code === 1){
          		layer.alert('添加成功',{icon: 6}, function(){
          			parent.window.location.href = parent.window.location.href; 
				});
   			}else{
          		layer.alert('添加失败', {icon: 5});  
		  }
		}
	});
});

后端:

public function upload(){
        //图片
        $file = Request::instance()->file("image");
        // 移动到框架应用根目录/public/uploads/form/ 目录下
        if($file){
            $info = $file->validate(['size'=>600678,'ext'=>'jpg,png,jpeg'])->move(ROOT_PATH .DS.'public'.DS.'uploads'.DS.'form');
            if($info){
                // 成功上传后 获取上传目录
                $img = $info->getSaveName();
                $imgpath = DS.'uploads'.DS.'form'.DS.$img;
                $data=$_POST;
                $data['image']=str_replace(DS,"/",$imgpath);
                $result = Db::table('表名')->insert($data);
                if($result){
                     $res = array(
                        'code' => 1,
                        'msg'  => '添加成功'
                    );
                }else{
                    $res = array(
                        'code' => 2,
                        'msg'  => '添加失败'
                    );
                }
            }
         }else{
            $res = array(
                'code' => 3,
                'msg'  => '图片上传失败'
            );
         }
        echo json_encode($res);
	}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值