Попытка получить свойство 'Nom' необъекта - PullRequest
0 голосов
/ 25 февраля 2020

Итак, у меня есть некоторые ошибки в моем коде, я хотел бы, чтобы окно поиска работало, когда я вводил название, специальность и город, но оно больше не работает, так что это мой код контроллера :

 public function chercher (Request $request) {
    $doctors=medecin::orderBy('created_at','desc')->get();
    $rech=$request->get('rech');
    $spec=$request->get('spec');
    $ville=$request->get('Région');


     $S=medecin::orderBy('created_at','desc')->get() 
     ->where('Spécialité',$spec) ;
     $SV=medecin::orderBy('created_at','desc')->get()
     ->where('Spécialité',$spec) 
     ->where('Ville',$ville);        
     $SN=medecin::orderBy('created_at','desc')->get() 
     ->where('Spécialité',$spec) 
     ->where('Nom',$rech) ;
     $SNV=medecin::orderBy('created_at','desc')->get() 
     ->where('Spécialité',$spec) 
     ->where('Nom',$rech) 
     ->where('Ville',$ville);
     $V=medecin::orderBy('created_at','desc')->get() 
     ->where('Ville',$ville);
     $N=medecin::orderBy('created_at','desc')->get() 
     ->where('Nom',$rech);
     $NV=medecin::orderBy('created_at','desc')->get() 
     ->where('Nom',$rech) 
     ->where('Ville',$ville) ; 
     return view ('doctors' ,['doc'=> $doctors,$S,$SV,$SN,$SNV,$V,$N,$NV],['tab'=>[$rech,$spec,$ville]]); }

и это представление:

{{$tab[0]}}
{{$tab[1]}}
{{$tab[2]}}
 <ul>
  @if($tab[1]=='Dentiste' && $tab[2]=='Tunis' && $tab[0]=='' )  
    @foreach($doc[0] as $show)
<h1> Dr.{{$show->Nom}} {{$show->Prénom}}  </h1> </br>
 <h1> {{$show->Photo}} </h1>
<h1>{{$show->Spécialité}} </h1>
<h1>{{$show->Ville}}</h1>
@endforeach
 @elseif($tab[1]=='' && $tab[2]=='' ) 
   @foreach($doc[2] as $show)
   <h1> Dr.{{$show->Nom}} {{$show->Prénom}}  </h1> </br>
 <h1> {{$show->Photo}} </h1>
<h1>{{$show->Spécialité}} </h1>
<h1>{{$show->Ville}}</h1>
@endforeach
@elseif ($tab[0]=='' && $tab[2]='')
@foreach ($doc[7] as $show)
<h1> {{$show->Nom}} {{$show->Prénom}}  </h1> </br>
 <h1> {{$show->Photo}} </h1>
<h1>{{$show->Spécialité}} </h1>
<h1>{{$show->Ville}}</h1>
@endforeach
@elseif ($tab[0]=='' && $tab[1]='')
@foreach ($doc[3] as $show) 
<h1> {{$show->Nom}} {{$show->Prénom}}  </h1> </br>
 <h1> {{$show->Photo}} </h1>
<h1>{{$show->Spécialité}} </h1>
<h1>{{$show->Ville}}</h1>
@endforeach
@elseif ($tab[1]=='' )
@foreach ($doc[1] as $show)
<h1> {{$show->Nom}} {{$show->Prénom}}  </h1> </br> 
 <h1> {{$show->Photo}} </h1>
<h1>{{$show->Spécialité}} </h1>
<h1>{{$show->Ville}}</h1>
@endforeach
@elseif ($tab[0]=='' )
@foreach ($doc[6] as $show)
<h1> {{$show->Nom}} {{$show->Prénom}}  </h1> </br>
 <h1> {{$show->Photo}} </h1>
<h1>{{$show->Spécialité}} </h1>
<h1>{{$show->Ville}}</h1>
@endforeach
@else ($tab[2]=='' )
@foreach ($doc[5] as $show)
 <h1> {{$show->Nom}} {{$show->Prénom}}  </h1> </br>  <h1> {{$show->Photo}} </h1>
<h1>{{$show->Spécialité}} </h1>
<h1>{{$show->Ville}}</h1>
@endforeach -->

@endif
</ul> 
</div>
</body>

если я нажму на кнопку поиска, появится эта ошибка:

Попытка получить свойство 'Nom' необъекта (представление: C: \ xampp \ htdocs \ Doctor \ resources \ views \ doctor.blade. php)

1 Ответ

0 голосов
/ 25 февраля 2020

По вашему мнению,

@foreach($doc[0] as $show)

должно быть

@foreach($doc as $show)

, потому что вы должны выполнять итерацию в массиве врачей.

Выполняя

@foreach($doc[0] as $show)

вместо этого вы перебираете свойства одного объекта-доктора, а это не то, что вам нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...