File upload 我试图上传多个图像,但当我把这个代码推到服务器上时,它给了我hashName错误
我试图上传多个图像,但当我把这个代码推到服务器上时,它给了我hashName错误 这是错误: 在null上调用成员函数hashName() HTML代码:File upload 我试图上传多个图像,但当我把这个代码推到服务器上时,它给了我hashName错误,file-upload,hash,upload,laravel-8,image-upload,File Upload,Hash,Upload,Laravel 8,Image Upload,我试图上传多个图像,但当我把这个代码推到服务器上时,它给了我hashName错误 这是错误: 在null上调用成员函数hashName() HTML代码: <form action="{{ route('products.store') }}" method="post" enctype="multipart/form-data"> <!-- Add CSRF Token -->
<form action="{{ route('products.store') }}" method="post" enctype="multipart/form-data">
<!-- Add CSRF Token -->
@csrf
<div class="form-group">
<label>Product Name</label>
<p> le nom du theme <input type="text" class="form-control" name="name" required></p>
</br>
<p>la description du theme<input type="text" class="form-control" name="description" required</p>
<div class="form-group">
<input type="file" name="image" required>
<input type="file" name="image2" required>
<input type="file" name="image3" required>
<input type="text" class="form-control" name="prix" required>
<input type="text" class="form-control" name="nb_download" required>
<input type="file" name="file" required>
<button type="submit">Submit</button>
</div>
</form>
templatesController(存储功能):
对
hashName()
(例如“image\u path”=>$request->image1->hashName()
)的调用之一是在空对象上完成的。换句话说,其中一个$request
字段在templatesControllernew templates
语句中返回null。在你把它推到现场之前,它能工作吗?谢谢你,康纳,是的,它工作了!我没有任何空对象。我不知道是什么问题!您肯定有一个空对象,否则您不会得到错误。“在null上调用成员函数hashName()”表示您在上调用的变量hashName()
未设置为实例。例如,如果$request->image1
为空,则不能调用hashName()
。尝试记录$request
的值,以验证它是否设置为您认为的值。它可能缺少一个字段值。谢谢你,康纳,这是一个输入错误!输入类型名称为“image”而不是“image1”。
route::resource('products','App\http\controllers\TemplatesController');
public function store(Request $request)
{
$templates = new templates([
"name" => $request->get('name'),
"description"=>$request->get('description'),
"image_path"=>$request->image1->hashName(),
"image_path2"=>$request->image2->hashName(),
"image_path3"=>$request->image3->hashName(),
"prix"=>$request->get('prix'),
"file_path" => $request->file->hashName(),
"nb_download"=>$request->get('nb_download')
]);
$request->image1->move(public_path('images'));
$request->image2->move(public_path('images'));
$request->image3->move(public_path('images'));
$templates->save();
return view('products.create');
}