1

ドロップダウンから選択したリストがデータベースの「destinationto」列内のリストと一致する場合、その行内のすべてのアイテムを取得する単純な検索エンジンを作成しています。しかし、検索ボタンを押しても、データベースからアイテムが返されませんでした。それは私に空の配列を与えるでしょう。

 object(Illuminate\Database\Eloquent\Collection)[141]
  protected 'items' => 
    array (size=0)
      empty

私は何を間違えましたか?

ここにスニペットがあります

OnewayflightControllers.php:

 public function onewayflightresults()
 {
  $destinationto = Input::get('destinationto');
  $results = Oneways::where('destinationto','=',$destinationto)->get();   
  var_dump($results);
 }
 public function onewayflight()
{ 
  $onewaysfrom = DB::table('oneways')->distinct()->lists('destinationfrom');
  $onewaysto = DB::table('oneways')->distinct()->lists('destinationto');
  return View::make('content.onewayflight')->with(['destinationfrom'=>$onewaysfrom,'destinationto'=>$onewaysto]);
}

onewayflight.blade.php :

{{ Form::label('destinationto','To: ') }} 
{{ Form::select('destinationto', $destinationto)}}
4

1 に答える 1

1

これは推測にすぎませんが、名前を持つフォーム要素が 1 つだけであることを確認する必要がありますdestinationto

たとえば、フォームにある場合

{{ Form::label('destinationto','From: ') }} 
{{ Form::select('destinationto', $destinationfrom)}}

{{ Form::label('destinationto','To: ') }} 
{{ Form::select('destinationto', $destinationto)}}

問題ないと思われる場合は、var_dump($destinationto);値が期待どおりであることを確認するために関数に追加する必要があります

編集

値をキーとして使用すると思いselectましたが、そうではないので、おそらく次のようにする必要があります。

$onewaysfrom = DB::table('oneways')->distinct()->lists('destinationfrom','destinationfrom');
$onewaysto = DB::table('oneways')->distinct()->lists('destinationto','destinationto');

ではない:

$onewaysfrom = DB::table('oneways')->distinct()->lists('destinationfrom');
$onewaysto = DB::table('oneways')->distinct()->lists('destinationto');
于 2014-10-03T15:16:04.547 に答える