繁体   English   中英

如何在 Laravel 中上传文件?

[英]How to upload a file in Laravel?

这是将图像上传到数据库的代码。

public function create(Request $request)

{
    $this->validate($request, [

        'comment' => 'required',
    ]);

    $mess = new messageUser;
    $mess->user_id = Auth::guard('userLogin')->user()->id;
    $mess->message = $request->comment;

    if($request->hasFile('image')){
        $filenameWithExtention = $request->file('image')->getClientOriginalName();
        $fileName = pathinfo($filenameWithExtention,PATHINFO_FILENAME);
        $extension = $request->file('image')->getClientOriginalExtension();
        $fileNameStore = $fileName .'_'.time().'.'.$extension;
        $path = $request->image->storeAs('images', $fileNameStore);
        $mess->attach = $fileNameStore;
    }

    $mess->save();
    return $mess;
}

<div class="form-group">
    <textarea id="compose-textarea" name="comment"></textarea>
</div>
<div class="form-group">
    <div class="input-group">
        <input type="file" name="image" class="form-control inputFileVisible" placeholder="attach one file">
        <button type="button" class="btn btn-fab btn-round btn-info"><i class="material-icons">attach an image</i>
        </button>
    </div>
</div>
<button type="submit" class="btn btn-primary"><i class="fa fa-envelope-o"></i>send image</button>

代码成功发送消息但没有上传图片。

你可以这样做:

if($request->hasFile('image')){
  $filenameWithExtention = $request->file('image')->getClientOriginalName();
  $fileName = pathinfo($filenameWithExtention,PATHINFO_FILENAME);
  $extension = $request->file('image')->getClientOriginalExtension();
  $fileNameStore = $fileName .'_'.time().'.'.$extension;
  $path = $request->photo->storeAs('images', $fileNameStore);
  $mess->attach = $fileNameStore;
}

更多请访问

谢谢。

注意:不要忘记运行php artisan storage:link

有什么错误请告诉我们,指导您会更好...顺便说一句,您可以使用以下代码上传图像/文件

    if ($request->image) {
               $file = $request->File('image');
               $ext  = $student->username . "." . $file- 
   >clientExtension();
              $file->storeAs('images/', $ext);
              $student->image = $ext;
          }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM