###開発環境
OS macOS Sierra 10.12.3
Mysql5.6
Apache
前提・実現したいこと
画像ファイルをアップロードしたい
ここに質問の内容を詳しく書いてください。
Laravelで設定画面でプロフィールページに画像アップロードをしたいと思っています。
画像リサイズのやり方に苦戦しており、最終的に
https://www.youtube.com/watch?v=jy2SUxx6uHc
上記のURLのやり方に行き着きました。
ソースをgit clone した時はできたので、お!これはいけるかもと思い、コードを少し応用してやりましたが、なぜか
画像ファイルが、public以下に保存されないということが起きています。
考えられるか原因を教えていただけると助かります。
発生している問題・エラーメッセージ
エラーメッセージはなく、ただ、画像ファイルがpublic以下に保存されないというところです。
public/uploads/avatarsというフォルダーを作り、そこに保存しようと記述していますが、保存されていないという現状です。
chmod -R 755 で,public以下の権限変更しましたが、なんの変化も見られませんでした。 ### 該当のソースコード viewの部分です。(一部抜粋) ```php <div> <form enctype="multipart/form-data" action = "{{route('config.profile')}}" method="put" class="form-horizontal" style="margin-top: 50px;"> <input type="file" name="avatar" style="float: margin-right:50px;"> <input type="text" name="message" id="message" placeholder="固定メッセージ"> <input type="text" name="message" id="boolean" placeholder="reta設定"> <input type="checkbox" name="integer" id="integer" placeholder="レート"> {{ csrf_token() }} <input type="submit" class="pull-right btn btn-sm btn-primary"> </form>
controllerの部分です。(一部抜粋)
namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Http\Requests; use Auth; use \App\Config; use \App\User; use Image; ...(省略) if($request->hasFile('avatar')){ $avatar = $request->file('avatar'); $filename = time() . '.' . $avatar->getClientOriginalExtension(); Image::make($avatar)->resize(300, 300)->save(public_path('/uploads/avatars/' . $filename )); $user->avatar = $filename; } else { dd($user); }
試したこと
packageはintervention/imageをしっかりインストールされており、gdの設定もできています。
routeの設定には問題がないと思います。
回答2件
あなたの回答
tips
プレビュー