PHP code example of ziminny / paginate_jason

1. Go to this page and download the library: Download ziminny/paginate_jason library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

ziminny / paginate_jason example snippets


/*
* @return html
*/
public function yourTableModel()
{
          //instancie a classe passando como parametro a sua conexão   
         $select = new \Ziminny\Paginate\db\AjaxTable($this->connect());
         // linhas por pagina default 8
         //$select->rowPerPage = 8;

        /**
         *  configurações da tabela
         */

        $table =
        [

            /*
            * Post METHOD  
            */   
            'posts' => [
                'pages'  => 'page',    // pagina atual que se encontra
                'input'  => 'query'    // campo de pesquisa
            ],

             /**
              * Tabela principal
              */   
            'table'     => 'clients',  // nome da tabela do banco de dados
            'orderBy'   => 'name',        
            'where'     => 'name',     // where name = query
            'columns'   => 'id,name',  // colunas do banco de dados


            'personalizeFields' => [   // apelido p/ as colunas ex.:  [ID] [Código]

                    'id'   => 'Código',
                    'name' => 'Nome',

            ],

             /**
              *  Caso a tabela possua fk
              */   

            'innerJoin' => [


                'alias' => true, // default false , definir para true caso exista fk e queira usar os registros
                'table'   => 'address',  // nome da segunda tabela
                'compare' => 'id_address=id', // ON campo da tablela 1 = campo da tabela 2
                'columns' => 'street,num', // campos da segunda tabela
                'personalizeFields' => [

                    'street' => 'Rua',
                    'num' => 'Número'

                ]

            ],

            /**
             *  Contagem das visuaalizações
             */

            'viewsCount' => [

                    'position' => '', // start , center , end
                    'text'     => ''  // default = Total
            ]

            ];

            /**
             *  Configuração da paginação
             */

            $pag = [

                'paginateResponsive' => false, // se true  exibe três tamanhos diferentes de acordo com a tela
                'position' => 'center', // start , center , end
                'previous' => '', // default <<
                'next' => '' // default >>

            ];

         /**
          *   A paginação nao é obrigatória , basta retirar o método paginate
          * assim como as configurações , caso nao seja passada como parâmetro
          * assumira as conficurações pre definidas  
          */   
        $select->table($table)
                ->paginate($pag)
                ->run();
    }

// Ex:. arquivo my_page.php
$datas = new MyClass();
$datas->yourTableModel() // return html