php
1コントローラー 2 3public function update(Request $request) 4 { 5 $validate_rules = [ 6 'name' => 'required', 7 'self_int' => 'max:500', 8 'image' => 'file|image', 9 ]; 10 11 $validate_messages = [ 12 'name.required' => '名前を入力してください', 13 'self_int.max' => '500文字以内にしてください', 14 'image.file' => 'ファイルを指定してください', 15 'image.image' => '指定されていないファイルです', 16 ]; 17 18 $this->validate($request,$validate_rules,$validate_messages); 19 Auth::user()->name = $request->name; 20 Auth::user()->self_int = $request->self_int; 21 if($request->hasFile('image')){ 22 Auth::user()->img_url = $request->image->store('users'); 23 }else{ 24 return view('test.index'); 25 } 26 27 Auth::user()->save(); 28 return redirect()->route('profile.index'); 29 }
php
1ビュー 2 3@extends('layouts.app') 4@section('content') 5@if(count($errors) > 0) 6 @foreach($errors->all() as $error) 7 <p>{{ $error }}</p> 8 @endforeach 9@endif 10 11<form action="{{ route('profile.edit') }}" method="post" enctype="multipart/form-data"> 12 @csrf 13 <div> 14 <label for="image">トプ画</label> 15 <input type="file" name="image"> 16 </div> 17 18 <div> 19 <label for="name">名前</label> 20 <input type="text" name="name" value="{{ $user->name }}"> 21 </div> 22 23 <div> 24 <label for="self_int">自己紹介</label> 25 <textarea name="self_int" cols="50" rows="10">{{ $user->self_int }}</textarea> 26 </div> 27 28 <div> 29 <input type="submit" value="送信"> 30 </div> 31@endsection
実際に画像ファイルを選択後
フォームを送信すると
エラーになります
Unable to guess the MIME type as no guessers are available (have you enable the php_fileinfo extension?).
試したこと
xamppのphp.iniに
extension=php_fileinfo.dll
の記述がないので追加した
(extフォルダにphp_fileinfo.dllは存在する)
自分の中で怪しいと思うのは
いつもphp aritisan serveでphpのビルドインサーバーを使っていましたが
xamppのコントロールパネルからapacheを起動していないので設定が反映されていないのかもしれません
とはいえ
何が原因なのかよくわかりません
お願いいたします。
PHP Version 7.2.9
laravel Version 5.8
回答1件
あなたの回答
tips
プレビュー