Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在laravel中对null调用成员函数getClientOriginalExtension()?_Laravel_Laravel 8 - Fatal编程技术网

在laravel中对null调用成员函数getClientOriginalExtension()?

在laravel中对null调用成员函数getClientOriginalExtension()?,laravel,laravel-8,Laravel,Laravel 8,提交图像时,会显示以下错误: 在null上调用成员函数getClientOriginalExtension() 我不知道,错在哪里 这是我的控制器,名为ProductController: public function store(Request $request) { $request->validate([ 'name' => 'required', 'brand' => 'required', 'detail' =

提交图像时,会显示以下错误:

在null上调用成员函数getClientOriginalExtension()

我不知道,错在哪里

这是我的控制器,名为
ProductController

public function store(Request $request)
{
    $request->validate([
        'name' => 'required',
        'brand' => 'required',
        'detail' => 'required',
        'size' => 'required',
        'type' => 'required',
        'price' => 'required',
        'image' => 'required',
    ]);
    $image = $request->file('image');
    $new_name = rand().'.'.$image->getClientOriginalExtension();
    $image->move(public_path('images'), $new_name);
    $form_data = array(
        'image' => $new_name,
        'name' => $request->input('name'),
        'size' => $request->input('size'),
        'type' => $request->input('type'),
        'price' => $request->input('price'),
        'detail' => $request->input('detail'),
        'brand' => $request->input('brand'),
    );

    Product::create($form_data);
    return redirect()->route('product.index')->withSuccess('Done');
}
错误发生在这一行:
$new_name=rand()。$image->getClientOriginalExtension()

这是我提交图像的表格:

<form id="myForm" method="post" action="{{ route('product.store') }}">
                        @csrf
                        <div class="user-box">
                            <input type="text" name="name" required="">
                            <label>Name</label>
                            @error('name')
                                <span class="invalid-feedback" role="alert">
                                    <strong>{{ $message }}</strong>
                                </span>
                            @enderror
                        </div>
                        <div class="user-box">
                            <input type="text" name="brand" required="">
                            <label>Brand</label>
                            @error('brand')
                                <span class="invalid-feedback" role="alert">
                                    <strong>{{ $message }}</strong>
                                </span>
                            @enderror
                        </div>
                        <div class="user-box">
                            <input type="text" name="price" required="">
                            <label>Price</label>
                            @error('price')
                                <span class="invalid-feedback" role="alert">
                                    <strong>{{ $message }}</strong>
                                </span>
                            @enderror
                        </div>
                        <div class="user-box" style=" border-bottom: 1px solid white">


                            <span style="font-weight: bold; color: white; font-size: 16px; margin-bottom: 30px ">Size</span>
                            <select name="size" id="size" style="width: 40px; font-size: 16px; margin-bottom: 20px ">
                                <option value="50  ML">50 ML</option>
                                <option value="100  ML">100 ML</option>
                                <option value="200  ML">200 ML</option>
                                <option value="500  ML">500 ML</option>
                                <option value="1 L">1 L</option>
                                <option value="4 L">4 L</option>
                                <option value="10 L">10 L</option>
                                <option value="20 L">20 L</option>
                            </select>
                            @error('size')
                                <span class="invalid-feedback" role="alert">
                                    <strong>{{ $message }}</strong>
                                </span>
                            @enderror
                        </div>
                        <div class="user-box">
                            <input type="text" name="type" required="">
                            <label>Type</label>
                            @error('type')
                                <span class="invalid-feedback" role="alert">
                                    <strong>{{ $message }}</strong>
                                </span>
                            @enderror
                        </div>
                        <div class="user-box">
                            <input type="text" name="detail" required="">
                            <label>Detail</label>
                            @error('detail')
                                <span class="invalid-feedback" role="alert">
                                    <strong>{{ $message }}</strong>
                                </span>
                            @enderror
                        </div>
                        <div class="user-box">
                            Image<input type="file" name="image" required="">
                            <label>Image</label>
                            @error('image')
                                <span class="invalid-feedback" role="alert">
                                    <strong>{{ $message }}</strong>
                                </span>
                            @enderror
                        </div>

                        <button class="a" id="a" value="submit" name="submit">Submit</button>

                    </form>

@csrf
名称
@错误('名称')
{{$message}}
@恩德罗
烙印
@错误('品牌')
{{$message}}
@恩德罗
价格
@错误(‘价格’)
{{$message}}
@恩德罗
大小
50毫升
100毫升
200毫升
500毫升
1升
4升
10升
20升
@错误('大小')
{{$message}}
@恩德罗
类型
@错误('类型')
{{$message}}
@恩德罗
细节
@错误('详细信息')
{{$message}}
@恩德罗
形象
形象
@错误('图像')
{{$message}}
@恩德罗
提交

向表单标签添加属性
enctype=“多部分/表单数据”
,如下所示:

<form id="myForm" method="post" action="{{ route('product.store') }}" enctype="multipart/form-data">

您的服务器没有收到您正在上载的文件

尝试将enctype='multipart/form data'添加到blade文件中的表单

<form id="myForm" method="post" action="{{ route('product.store') }}" enctype='multipart/form-data'>


当然,你的问题解决了吗?是的,我的问题解决了谢谢你的帮助