На этом маршруте
Route::get('/', function () {
return view('index');
});
Вы вызываете view index
без какой-либо переменной result
, которая выдает эту ошибку
Сначала вы решаете, что хотите, если нет result
, затем делаете соответствующие действия, чтобы просто обработать ошибку, которую вы можете использовать $result ?? []
@foreach($result ?? [] as $row)
Если вы хотите вызвать один и тот же метод из двух разных URL /
и /index
, используйте следующий маршрут
Route::get('/','FirstController@state');
Route::get('index','FirstController@state');
Также измените ваш построитель запросов, чтобы он выглядел как более стиль laravel.
public function state()
{
$sql = DB::table('states')->where('country_id',101)->get();
return view('index',['result'=>$sql]);
}