blade上で日付検索をしてConroller内でその日付を$hidukeという変数に入れてwhereに書いています。
そしてそのクエリを$sqlという変数に入れて先ほどと同じbladeに渡しています。
そしてその結果を同じbladeにHighchartsを使用してグラフ化しようとしていてそこで$sqlを使用しています。
ですが、最初にページを開いた際にタイトルのエラーが出てしまいます。
最初にアクセスした時に変数が空なのでエラーが出てしまうのは理解しているのですが
対処法がわかりませんでした。
初回アクセス時に変数を無いことにしたいのですができますでしょうか?
よろしくお願いします。
search.blade.php
1{{ Form::open(['route' => ['time.search'], 'method' => 'post', 'id' => 'searchForm', 'name' => 'searchForm', 'class' => 'form-horizontal']) }} 2 <div class="row"> 3 <div class="col-md-12"> 4 <div class="panel-body"> 5 <div class="form-group"> 6 {{ Form::label('hiduke', '日付:', array('class' => 'col-sm-2 control-label')) }} 7 <div class="col-sm-10"> 8 <div class="input-daterange input-group" id="datepicker"> 9 {{ Form::tel('hiduke', null, ['class' => 'input-sm form-control', 'placeholder' => '入力', 'id' => 'hiduke']) }} 10 </div> 11 </div> 12 </div> 13 <div class="form-group"> 14 <div class="col-sm-offset-2 col-sm-10"> 15 <input type="submit" class="btn btn-default" id='compositeBtn' value="検索"> 16 <input type="button" class="btn btn-default" id='clearBtn' value="クリア"> 17 </div> 18 </div> 19 </div> 20 </div> 21 </div> 22 {{ Form::close() }} 23 24. 25. 26. 27<script> 28. 29. 30. 31 series: [{ //グラフの中身(データの設定) 32 pointWidth: 50, 33 name: "本日の送信件数", //各データの名前 34 data:[<?php echo $sql; ?> 35 ], 36 dataLabels:{ 37 enabled:true, 38 color:'#000000'//各データ(数値) 39 } 40 }] 41. 42. 43. 44</script>
SearchController
1 public function index(){ 2 3 return view('admin::time.search'); 4 } 5 6 /** 7 * 検索 8 */ 9 public function search(){ 10 //入力値取得 11 $hiduke = Request::Input('hiduke'); 12 13 //日付が入力されていない場合エラー 14 if(!$hiduke){ 15 return redirect()->route("time.search")->withErrors('日付を入力してください。')->withInput(); 16 } 17 18 $sql = Read::select(DB::raw('CONVERT(varchar,work_dt,111)')) 19 ->join('arrival','comp.key_no','=','arrival.key_no') 20 ->where((DB::raw('CONVERT(varchar,send_dt,111)')),'like',"$hiduke%") 21 ->groupBy((DB::raw('CONVERT(varchar,work,111)'))) 22 ->count('send_dt'); 23 24 return view('admin::time.search',['sql' => $sql]); 25 }
routes.php
1Route::get('time/search',['as' => 'time.search', 'uses' => 'SearchController@index']); 2Route::post('time/search', ['as' => 'time.search', 'uses' => 'SearchController@search']);
回答1件
あなたの回答
tips
プレビュー