/Class-Pagination

Classe de paginação

Primary LanguagePHP

Class-Pagination

Classe de paginação

Métodos publicos

MaxPerPage($max)

Método que recebe o valor máximo de registros por página

Page($name_page)

Método que recebe o nome do page Ex: /usuarios?pagina

MaxLinks($maxlinks)

Método que recebe o valor máximo de links visiveis a esquerda e a direita da paginação

Places(array $places_values)

Método que recebe um array para usar como substitutos no Bind

CreatePagination($Query)

Método que recebe uma string SQL para retornar os itens para a paginação

CreateLinks()

Método que gera os links de paginação

Com essa classe podemos fazer varios tipos de busca ao banco inclusive fazendo uso de Join's

Exemplo de Select básico para apenas uma tabela

$pagination->CreatePagination("SELECT * FROM users");

Exemplo de Select com JOIN

$pagination->CreatePagination("SELECT v.*,i.* FROM vendas AS v 
                                 INNER JOIN iten_venda AS i 
                                 ON v.id_venda = i.id_venda");

Exemplo de Select onde será necessário passar os valores que serão substituidos pelo método Places

$pagination->Places(['id' => 1]);
$pagination->CreatePagination("SELECT * FROM pedidos WHERE id_pedido = :id");

Exemplo de uso:

        require './vendor/autoload.php';

        use App\Helpers\Pagination;

        $pagination = new Pagination();
        try {
            $listagem = $pagination->CreatePagination("SELECT * FROM users");
            $links = $pagination->CreateLinks();
        } catch (Exception $e) {
            die($e->getMessage());
        }
        /* Aqui em listagem voce pode criar uma tabela em html e extrair os dados nesta tabela */
        echo "<pre>";
        var_dump($listagem);
        echo "<pre>";

        echo $links;