Hi i'm trying to paginate my view and i have this following code in my controller for the pagination:
public function membrevis()
{
$filter = isset($_GET['filter']) ? $_GET['filter'] : null;
$query = DB::table('users')
->join('user_role', 'users.id', '=', 'user_role.user_id')
->join('roles', 'user_role.role_id', '=', 'roles.id')
->where('users.valid','=',0)
->select('users.*','roles.description');
if ($filter != null) {
$query->where('users.name','like','%'.$filter.'%')
->orWhere('roles.description','like','%'.$filter.'%');
}
$users = $query->get();
$itemsPerPage = 8 ;
$currentPage = isset( $_GET['page'] ) && is_numeric( $_GET['page'] ) ? $_GET['page'] : 1;
$urlPattern = '/profilecontroller/membrevis?page=(:num)';
$totalItems = $users->count();
$donner = $users->offset( ( $currentPage - 1 ) * $itemsPerPage )->limit( $itemsPerPage )->get();
$paginator = new Paginator( $totalItems, $itemsPerPage, $currentPage, $urlPattern );
return view('membre2',['users'=> $donner,'paginator'=> $paginator]);
My view membre2.blade.php has the following code as well for pagination:
<form>
....
</form>
<table>
@foreach($users as $row)
....
@endforeach
</table>
echo $paginator;
But i' still get this error Method Illuminate\Support\Collection::offset does not exist. knowing i already installed "jasongrimes/paginator:~1.0" by CMD
any help would be appreciated!
$usersquery in your controller? show your code completely. - Mehdi Alipour