【问题标题】:how to upload two different files (image and txt file) in laravel如何在 laravel 中上传两个不同的文件(图像和 txt 文件)
【发布时间】:2016-06-24 11:23:01
【问题描述】:

大家好,我的情况很奇怪 :( 我有一个更新视图,其中有两个上传文件字段 1. 图像 2.文本文件 在图像部分获取​​已经保存在数据库中的图像。但是当我上传简历而不是图像时,简历没有保存在数据库中,这给了我错误

在 null 时调用成员函数 getClientOriginalName() 为什么会这样。

这是我的看法

<form class="checkout woocommerce-checkout" method="post" class="form-horizontal"
      action="{{Route('studentUpdateProfile')}}" enctype="multipart/form-data">
    <input type="hidden" name="_token" value="{{ csrf_token() }}">
    <div class="col-lg-6 col-md-6 col-sm-6 col-xs-12 col-lg-offset-3 col-md-offset-3 col-sm-offset-3">
        <div class="mj_mainheading mj_toppadder50 mj_bottompadder55">
            <h1 style="font-size:35px;"> P<span style="font-size:28px;">ersonal</span> i<span style="font-size:28px;">formation</span>
            </h1>
        </div>
    </div>

    <div class="form-group" style="width: 50%; ">
        <img id="blah" src="{{ asset("uploads/images/$user->image") }}" alt="User Image" height="150"/>
        <br><br>
        <input type='file' id="image" name="image" value="image"/>

    </div>


    <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 mj_bottompadder20">
        <div class="form-group">
            <label>Select C.V
            </label>
            <input type='file' id="cv" name="cv" value="cv"/>
        </div>
    </div>
</form>

在我的控制器中

public function updateUserProfile(Request $request)
{
    $this->validate($request, [


        'cv' => 'max:2048',
    ]);

   $image = $request->file('image');

    $upload = 'uploads/images';
    $filename = $image->getClientOriginalName();
     $image->move($upload, $filename);

    $file = $request->file('cv');
    $upload = 'uploads/cv';
    $cv = $file->getClientOriginalName();
    $file->move($upload, $cv);

        $user = Auth::User();

        $user->accountType = $request->accountType;
        $user->email = $request->email;
        $user->userName = $request->userName;
        $user->gender = $request->gender;
        $user->dob = $request->dob;
        $user->country = $request->country;
        $user->city = $request->city;
        $user->mobileNo = $request->mobileNo;
        $user->cnic = $request->cnic;
        $user->address = $request->address;
        $user->degreeLevel = $request->degreeLevel;
        $user->degreeTitle = $request->degreeTitle;
        $user->institution = $request->institution;
        $user->degreeCountry = $request->degreeCountry;
        $user->degreeCity = $request->degreeCity;
        $user->experience = $request->experience;
        $user->workExperience = $request->workExperience;
        $user->industry = $request->industry;
        $user->acedCountry = $request->acedCountry;
        $user->image = $filename;
        $user->cv = $cv;
        $user->save();
        return redirect()->back();
    }
}

【问题讨论】:

  • getClientOriginalName 是 UploadedFile 类可用的方法。为了帮助调试,您应该转储请求的值并查看图像属性中实际设置的内容。 dd($request-&gt;all());。确保您在表单上也设置了正确的编码类型(多部分/表单数据)。

标签: laravel


【解决方案1】:

我这样做了,但同样的错误 我如何在控制器中放置图像和 cv 可以是空字段的条件。 意思是 aagr image ya cv me se ak select kre to b profile update ho jaye ya ak b nhi krta select tab b upadte ho????

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-13
    • 2019-12-30
    • 1970-01-01
    • 2013-07-13
    相关资源
    最近更新 更多