Показаны от 1 до 10 из 35 записей, не работающих в laravel

Mahbub спросил: 28 апреля 2018 в 08:21 в: php

Я работаю с laravel 5.6, показывая данные, но он не работает отлично.

Этот код отображался мной в кулачной странице. Отображалось от 0 до 10 из 35 и отображалась последняя страница. Показано с 30 по 40 из 35

$page    = $request->has('page') ? $request->get('page') : 1;
$total   = UserAdmin::count();
$perPage = 10;
$showingTotal  = $page * $perPage;$currentShowing = $showingTotal>$total ? $total : $showingTotal;
$showingStarted = $showingTotal - $perPage;
$tableInfo = "Showing $showingStarted to $showingTotal of $total";

Я хочу отображать от 1 до 10 из 35 записей на первой странице, а последняя страница будет отображаться Отображать от 30 до 35 из 35 записей

3 ответа

Есть решение
Daart Kote ответил: 28 апреля 2018 в 08:33
$tableInfo = "Showing $showingStarted to $currentShowing of $total";

Используйте указанный $ showTotal вместо $ currentShowing

AddWeb Solution Pvt Ltd ответил: 28 апреля 2018 в 08:29

вы должны попробовать следующее:

Пожалуйста, используйте paginate в своем запросе и попробуйте:

$perPage = 10;$rsltUsers   = UserAdmin::paginate($perPage);
Matadeleo ответил: 28 апреля 2018 в 08:32

Это связано с тем, что ваш $showingTotal является фиксированным значением, вычисленным из $page * $perPage.

Быстрое и грязное решение заключается в добавлении строки:

if ($showingTotal > $total) {
    $showingTotal = $total;
}

Но, пожалуйста, подумайте об использовании правильной страницы, предлагаемой в Laravel. $showingTotal должен динамически обновляться, а не просто вычисляться из фиксированных переменных.