前提・実現したいこと
PHP(larvel)でタスク管理システムを作っています。
経験値を保存し、indexページをリダイレクト後、モーダルを表示する機能を実装しようとしましたが、モーダルが表示されずただリダイレクトされるだけの状態です。経験値およびレベルアップ機能はできております。
モーダル表示に関して、コードにおかしな部分がないか確認いただきたいです。
該当のソースコード
laravel
1// index.blade.php内 2 3{{-- <!--完了ボタン -->--}} 4 <td class="button"><form action="{{ route('todo.complete',$todo["id"]) }}" method="post"> 5 {{ csrf_field() }} 6 {{ method_field('patch')}} 7 <button type="submit" class="btn btn-success" id="openModal">完了</button> 8 </form> 9 </td> 10 <!-- モーダルエリアここから --> 11 @if (session('flash_message')) 12 <section id="modalArea" class="modalArea"> 13 14 <div id="modalBg" class="modalBg"> 15 </div> 16 <div class="modalWrapper"> 17 <div class="modalContents"> 18 {{ session('flash_message') }} 19 </div> 20 <div id="closeModal" class="closeModal"> 21 × 22 </div> 23 </div> 24 25 </section> 26 @endif 27 28 <main class="mt-4"> 29 @yield('content') 30 </main> 31 <!-- モーダルエリアここまで --> 32 33 <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 34 <script> 35$(function () { 36 $('#openModal').load(function(){ 37 $('#modalArea').fadeIn(); 38 }); 39 $('#closeModal , #modalBg').click(function(){ 40 $('#modalArea').fadeOut(); 41 }); 42}); 43 </script> 44 </body> 45
laravel
1 public function complete($id) { 2 // 完了日を入力 3 $todo = Todo::find($id); 4 $todo->completed_at = date("y-m-d"); 5 $todo->save(); 6 7 // 経験値を加算 8 $userLevel = userlevel::whereIn('id', function ($query) { 9 $query->select(DB::raw('MAX(id) As id'))->from('user_levels'); 10 })->first(); 11 $levelSetting = levelsetting::where('level', '<=', $userLevel->users_level) 12 ->sum("thresold"); 13 $totalExp = $userLevel->experience_point; 14 $totalExp += $todo->difficultyLevel; 15 $userLevel->experience_point = $totalExp; 16 $userLevel->save(); 17 // レベルを上げる 18 if ($levelSetting <= $userLevel->experience_point) { 19 $userLevel->users_level = $userLevel->users_level +1; 20 $userLevel->save(); 21 session()->flash('flash_message', 'レベルが上がりました'); 22 } 23 return redirect('todos/index'); 24 } 25
補足情報(FW/ツールのバージョンなど)
PHP 7.4.9
laravel 6.18.35
MySQL 5.7.26
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/28 06:02
2020/08/28 06:11
2020/08/28 08:34