質問

私はその結果をまとめるために、その結果の両方から数回の回答を採用しました。しかし、私はUndefined variable errorを持っています、そして私はなぜわからない。

コントローラ

public function getJobs()

        {
            $query = DB::table('jobs');

            if (isset($jcategory))
            $query->where('category', '=', $jcategory);

            $result = $query->get();
           return View::make('jobsearch.search', $result);
        }
.

ビュー(スペースと省略されています)

<form action="{{ action('JobsearchController@getJobs') }}" method="post">
  <div class="row">
    <div class="large-8 columns">
      <input type="text" name="realm" placeholder="Keywords/Skills" />
    </div>
    <div class="large-4 columns">
        <select name="jcategory">
        <option value="">Select Category</option>
        <option value="jc1">Accounting</option>
.

...

 </select>
    </div>
    <div class="large-4 columns">
       <input type="submit" value="Search" style="width:100%; padding-top: .5rem;
padding-bottom: .5rem;" class="button border-btn" />
      </div>


</div>
</form>

@foreach ($result as $job)
    <p>{{ $job->id }}</p>
@endforeach
.

この小さなテストを取得したら、issetの残りの部分を$queryに追加します。私が達成しようとしていることは、ビューがデータベース内のすべてのジョブをロードし、ユーザーがカテゴリを変更し(たとえば)ビューを送信し、それはクエリ内の反映の変更を持つページをリロードすることです。

現在、ビューにUndefined variable: resultエラーを取得します。私はさまざまな方法でforeachを試しましたが、コントローラが何も通過していないと感じます。

役に立ちましたか?

解決

$result変数を間違った方法に渡しました。これを試してください:

return View::make('jobsearch.search')->with('result', $result);
.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top