Mam taki problem mam sobie funkcje
private function select_patients_search($name,$lastname,$pesel,$sort,$skip) {
$patients = \App\Patient::query();
$patients_next = \App\Patient::query();
$patients_back = \App\Patient::query();
if ($name != "") {
$patients->where('name',"LIKE","%{$name}%");
$patients_next->where('name',"LIKE","%{$name}%");
$patients_back->where('name',"LIKE","%{$name}%");
}
if ($lastname != "") {
$patients->where('lastname',"LIKE","%{$lastname}%");
$patients_next->where('lastname',"LIKE","%{$lastname}%");
$patients_back->where('lastname',"LIKE","%{$lastname}%");
}
if ($pesel != "") {
$patients->where("date_born","LIKE","%{$date_born}%");
$patients_next->where("date_born","LIKE","%{$date_born}%");
$patients_back->where("date_born","LIKE","%{$date_born}%");
}
if ($sort != "") $patients->orderBy($sort,"desc");
//if ($skip == 0) $patients->skip(0)->take($this->page);
$patients->skip($this->page * $skip)->take($this->page);
$patients_next->skip($this->page * $skip + 1)->take($this->page);
$patients_back->skip($this->page * $skip - 1)->take($this->page);
//if ($skip == 0) $skip = 1;
$page1 = count($patients_next);
$page2 = count($patients_back);
//print $page1;
if ($skip == 0) $this->page_back = null;
else $this->page_back = $skip - 1;
if ($page1 <= 0) $this->page_next = null;
else $this->page_next = $skip + 1;
$list = $patients->get();
return $list;
}
Która robi mi paginacje i teraz nie wiem jak zrobić, żeby jednocześnie w zmiennej $patients_back->skip($this->page * $skip - 1)->take($this->page); było to zapytanie i count
Próbowałem zrobić coś na zasadzie tego
$patients_back->skip($this->page * $skip - 1)->take($this->page);
$patients_back->count();
Ale to nie zwraca mi dobrych wyników.