【问题标题】:file upload laravel 5文件上传 laravel 5
【发布时间】:2015-12-23 20:46:13
【问题描述】:

您好,我正在尝试使用 Laravel 5 上传图片

功能是:

$file_name = '';
//validation of image before uploading and saving
if( Input::hasFile('img')  && Input::file('img')->isValid() ){
    $file = Input::file('img'); //creating an object
    $file_name = str_random(30) . '.' . $file->getClientOriginalExtension(); //randon str name to img file with the ext of the original file
    $file->move( public_path() . '\assets\img', $file_name);
}

表单:多部分/表单数据

输入:输入类型=“文件”名称=“img”

问题是$file_name中总是有一个空值

【问题讨论】:

  • 你确定这个条件if( Input::hasFile('img') && Input::file('img')->isValid() ){中的代码被执行了
  • 它没有。那就是问题所在。当我 dd 时,我上传文件结束仍然 jeep gettino 'null'
  • 分享您的html 表单开始标签。

标签: php forms file-upload laravel-5


【解决方案1】:

您的表单开始标签应该有enctype="multipart/form-data"。看起来像这样:

<form method="POST" enctype="multipart/form-data">

要将图像移动到存储中,请在控制器中编写代码,如下所示:

public function store(Request $request)
{
    if($request->hasFile('img') && $request->file('img')->isValid()){
        $file = $request->file('img');
        $file_name = str_random(30) . '.' . $file->getClientOriginalExtension();
        $file->move(base_path() . '/assets/img', $file_name);
    }
}

【讨论】:

    猜你喜欢
    • 2016-07-21
    • 2017-02-12
    • 2017-07-29
    • 2015-05-20
    • 2017-06-14
    • 1970-01-01
    • 1970-01-01
    • 2015-09-30
    • 2016-03-14
    相关资源
    最近更新 更多