基于Laravel图片上传
1。HTML代码:
添加旅游信息 ECSHOP管理中心 商品分类 - 添加分类 { {--在这个里面一定要加上 enctype="multipart/form-data" 否则你在控制器中是得不到文件的,只能得到文件名字--}}
2.控制器代码:
addTourism($input); return json_encode($msg); } return view('admin.addTourism'); } public function editTourism(){ if($_SERVER['REQUEST_METHOD'] == "POST") { $file = Request::file('course_img'); $request = Request::all(); var_dump($file); echo ""; var_dump($request); }// $image = $_FILES['input_img']; return view('admin.editTourism'); }}
3.模型中的写法
'required'] ); //验证错误的提示 if($validator->fails()){ return['code'=>202,'msg'=>'没有输入必要的字段']; } //将_token移除 unset($data['_token']); $image_path = ""; $is_image = ['.jpg','.png','.gif','.jpeg']; $images = $_FILES['img_path']; for($i = 0; $i < count($images['name']); $i++){ $image_name = $images['name'][$i]; //获取图片的名称 $image_name =strstr($image_name,'.'); //截取字符串 if(!in_array($image_name,$is_image)) return ['code'=>202,'msg'=>'您上次的文件不是图片']; $path = "upload/admin/".date('Y-m-d',time()); if(!is_dir($path )) mkdir($path, 0777, true); //判断文件是否存在 不存在则创建 $image_name = str_random(5).time().$image_name; //设置图片的名称,为了保存的图片不重名 if(empty($image_path)) $image_path = $image_name; //拼接字符串 保存到数据库中 else $image_path = $image_path.','.$image_name; $pics_path = $path."/".$image_name; move_uploaded_file($images['tmp_name'][$i],$pics_path); } $data['img_path'] = $image_path; $data['op_time'] = time(); $msg = $this->create($data); //是用create方法会返回当前插入数据的所有数据 return['code'=>200,'msg'=>$msg]; }}