将图片和文件上传到论坛

时间:2019-03-01 05:38:54

标签: php database laravel laravel-5 eloquent

我已经搜索了SO,但没有找到与此相关的任何文章或帖子。 如何使用Image Intervention上传图像,并在单个论坛中上传普通文件,而无需打开新的上传页面。

希望以下答案可以帮助某个人。

1 个答案:

答案 0 :(得分:0)

刀片

 <form action="{{route('index.store')}}" enctype="multipart/form-data" method="POST">


      <div class="form-group">
          <label for="resume_path">Resume</label>
              <input type="file" class="form-control" 
                name="resume_path">
      </div>

      <div class="form-group">
          <label for="engineer_avatar">Profile Image</label>
              <input type="file" class="form-control" 
                name="engineer_avatar">
      </div>

    </form>

控制器

use Image;
use App\Engineers;

 */
    public function update(Request $request, $id)
    {
        $this->validate($request,[

'engineer_avatar' => 'image|mimes:jpeg,png,jpg|max:2048',
            'resume_path' => 'file|mimes:doc,docx,pdf|max:2048',
            // dimensions:min_width=600,min_height=400'
        ]);

        $engineers = Engineers::findOrFail($id);
 if($request->hasFile('engineer_avatar')){
            $image = $request->file('engineer_avatar');
            $filename = time() . '.' . $image->getClientOriginalExtension();
            $location = public_path('images/engineer_avatar/' . $filename);
            Image::make($image)->resize(600,400)->save($location);
            $engineers->avatar_path = $filename;
}


        if($request->hasFile('resume_path')){
            $file = $request->file('resume_path');
            $file_name1 = time() . '.' . $file->getClientOriginalExtension();                      
            $file_path = public_path('resume/engineer/');
            $engineers->resume_path = $file_name1;
            $file->move($file_path, $file_name1);
        $engineers->save();

}

要删除文件::

 public function destroy($id)
    {
        $engineers = Engineers::findOrFail($id);
        unlink(public_path('images/engineer_avatar/' . $engineers->avatar_path ));
        unlink(public_path('resume/engineer/' . $engineers->resume_path ));

        $engineers->delete();
 }